﻿2026-06-04T12:50:05.7419285Z ##[group]Run ./traceable-reqs check --json
2026-06-04T12:50:05.7421089Z [36;1m./traceable-reqs check --json[0m
2026-06-04T12:50:05.7444809Z shell: /usr/bin/bash -e {0}
2026-06-04T12:50:05.7446152Z ##[endgroup]
2026-06-04T12:50:05.7714451Z {
2026-06-04T12:50:05.7715828Z   "schemaVersion": 1,
2026-06-04T12:50:05.7717309Z   "summary": {
2026-06-04T12:50:05.7718716Z     "requirementCount": 129,
2026-06-04T12:50:05.7721163Z     "completeCount": 129,
2026-06-04T12:50:05.7722713Z     "incompleteCount": 0,
2026-06-04T12:50:05.7724168Z     "findingCount": 0
2026-06-04T12:50:05.7725458Z   },
2026-06-04T12:50:05.7726583Z   "requirements": [
2026-06-04T12:50:05.7727835Z     {
2026-06-04T12:50:05.7729100Z       "id": "REQ-API-1",
2026-06-04T12:50:05.7731275Z       "title": "api prefix and adapter_name on every machinery invocation",
2026-06-04T12:50:05.7733535Z       "requiredStages": [
2026-06-04T12:50:05.7734880Z         "impl",
2026-06-04T12:50:05.7736717Z         "unit",
2026-06-04T12:50:05.7737858Z         "int"
2026-06-04T12:50:05.7739049Z       ],
2026-06-04T12:50:05.7740296Z       "stages": {
2026-06-04T12:50:05.7741590Z         "doc": {
2026-06-04T12:50:05.7742899Z           "complete": false,
2026-06-04T12:50:05.7744362Z           "evidence": []
2026-06-04T12:50:05.7745728Z         },
2026-06-04T12:50:05.7746907Z         "impl": {
2026-06-04T12:50:05.7748199Z           "complete": true,
2026-06-04T12:50:05.7749702Z           "evidence": [
2026-06-04T12:50:05.7751036Z             {
2026-06-04T12:50:05.7752355Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:50:05.7754141Z               "line": 15
2026-06-04T12:50:05.7755484Z             }
2026-06-04T12:50:05.7756637Z           ]
2026-06-04T12:50:05.7757765Z         },
2026-06-04T12:50:05.7758922Z         "int": {
2026-06-04T12:50:05.7760247Z           "complete": true,
2026-06-04T12:50:05.7761687Z           "evidence": [
2026-06-04T12:50:05.7762996Z             {
2026-06-04T12:50:05.7764468Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:05.7766330Z               "line": 13
2026-06-04T12:50:05.7767727Z             }
2026-06-04T12:50:05.7768935Z           ]
2026-06-04T12:50:05.7772418Z         },
2026-06-04T12:50:05.7773642Z         "unit": {
2026-06-04T12:50:05.7775174Z           "complete": true,
2026-06-04T12:50:05.7776654Z           "evidence": [
2026-06-04T12:50:05.7777904Z             {
2026-06-04T12:50:05.7779151Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:50:05.7781062Z               "line": 336
2026-06-04T12:50:05.7782347Z             },
2026-06-04T12:50:05.7783478Z             {
2026-06-04T12:50:05.7784745Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:50:05.7786415Z               "line": 342
2026-06-04T12:50:05.7787661Z             },
2026-06-04T12:50:05.7819901Z             {
2026-06-04T12:50:05.7821588Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:50:05.7823403Z               "line": 353
2026-06-04T12:50:05.7824665Z             }
2026-06-04T12:50:05.7825776Z           ]
2026-06-04T12:50:05.7826825Z         }
2026-06-04T12:50:05.7827861Z       }
2026-06-04T12:50:05.7828876Z     },
2026-06-04T12:50:05.7829943Z     {
2026-06-04T12:50:05.7831017Z       "id": "REQ-API-2",
2026-06-04T12:50:05.7833121Z       "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)",
2026-06-04T12:50:05.7835633Z       "requiredStages": [
2026-06-04T12:50:05.7836922Z         "impl",
2026-06-04T12:50:05.7838034Z         "unit",
2026-06-04T12:50:05.7839148Z         "int"
2026-06-04T12:50:05.7840416Z       ],
2026-06-04T12:50:05.7841438Z       "stages": {
2026-06-04T12:50:05.7842542Z         "doc": {
2026-06-04T12:50:05.7843672Z           "complete": false,
2026-06-04T12:50:05.7845000Z           "evidence": []
2026-06-04T12:50:05.7846203Z         },
2026-06-04T12:50:05.7847219Z         "impl": {
2026-06-04T12:50:05.7848361Z           "complete": true,
2026-06-04T12:50:05.7849922Z           "evidence": [
2026-06-04T12:50:05.7851146Z             {
2026-06-04T12:50:05.7853124Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T12:50:05.7854903Z               "line": 15
2026-06-04T12:50:05.7856153Z             },
2026-06-04T12:50:05.7857239Z             {
2026-06-04T12:50:05.7858542Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:05.7860435Z               "line": 20
2026-06-04T12:50:05.7861641Z             },
2026-06-04T12:50:05.7862688Z             {
2026-06-04T12:50:05.7863936Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:05.7865629Z               "line": 125
2026-06-04T12:50:05.7866837Z             },
2026-06-04T12:50:05.7867895Z             {
2026-06-04T12:50:05.7869196Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7871223Z               "line": 21
2026-06-04T12:50:05.7872420Z             },
2026-06-04T12:50:05.7873470Z             {
2026-06-04T12:50:05.7874754Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7876687Z               "line": 38
2026-06-04T12:50:05.7877946Z             },
2026-06-04T12:50:05.7879027Z             {
2026-06-04T12:50:05.7880712Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7882427Z               "line": 160
2026-06-04T12:50:05.7883633Z             },
2026-06-04T12:50:05.7884689Z             {
2026-06-04T12:50:05.7885958Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7887647Z               "line": 199
2026-06-04T12:50:05.7888868Z             },
2026-06-04T12:50:05.7890370Z             {
2026-06-04T12:50:05.7891659Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7893355Z               "line": 223
2026-06-04T12:50:05.7894569Z             },
2026-06-04T12:50:05.7895623Z             {
2026-06-04T12:50:05.7896852Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.7898494Z               "line": 17
2026-06-04T12:50:05.7899993Z             },
2026-06-04T12:50:05.7901083Z             {
2026-06-04T12:50:05.7902371Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.7904070Z               "line": 30
2026-06-04T12:50:05.7905309Z             },
2026-06-04T12:50:05.7906392Z             {
2026-06-04T12:50:05.7907675Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.7909595Z               "line": 63
2026-06-04T12:50:05.7910814Z             },
2026-06-04T12:50:05.7911870Z             {
2026-06-04T12:50:05.7913108Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.7914776Z               "line": 76
2026-06-04T12:50:05.7915969Z             }
2026-06-04T12:50:05.7917012Z           ]
2026-06-04T12:50:05.7918032Z         },
2026-06-04T12:50:05.7919045Z         "int": {
2026-06-04T12:50:05.7920611Z           "complete": true,
2026-06-04T12:50:05.7921929Z           "evidence": [
2026-06-04T12:50:05.7923104Z             {
2026-06-04T12:50:05.7924383Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:05.7926105Z               "line": 14
2026-06-04T12:50:05.7927315Z             },
2026-06-04T12:50:05.7928370Z             {
2026-06-04T12:50:05.7929883Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:05.7931832Z               "line": 151
2026-06-04T12:50:05.7933128Z             }
2026-06-04T12:50:05.7934186Z           ]
2026-06-04T12:50:05.7935217Z         },
2026-06-04T12:50:05.7936250Z         "unit": {
2026-06-04T12:50:05.7937402Z           "complete": true,
2026-06-04T12:50:05.7938698Z           "evidence": [
2026-06-04T12:50:05.7940259Z             {
2026-06-04T12:50:05.7941552Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T12:50:05.7943267Z               "line": 42
2026-06-04T12:50:05.7944488Z             },
2026-06-04T12:50:05.7945558Z             {
2026-06-04T12:50:05.7946826Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:05.7948509Z               "line": 204
2026-06-04T12:50:05.7950150Z             },
2026-06-04T12:50:05.7951223Z             {
2026-06-04T12:50:05.7952786Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7954517Z               "line": 296
2026-06-04T12:50:05.7955761Z             },
2026-06-04T12:50:05.7956837Z             {
2026-06-04T12:50:05.7958160Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7960291Z               "line": 307
2026-06-04T12:50:05.7961548Z             },
2026-06-04T12:50:05.7962654Z             {
2026-06-04T12:50:05.7963990Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7965745Z               "line": 375
2026-06-04T12:50:05.7967002Z             },
2026-06-04T12:50:05.7968111Z             {
2026-06-04T12:50:05.7969681Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.7971573Z               "line": 387
2026-06-04T12:50:05.7972841Z             },
2026-06-04T12:50:05.7974000Z             {
2026-06-04T12:50:05.7975304Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.7977170Z               "line": 137
2026-06-04T12:50:05.7978459Z             },
2026-06-04T12:50:05.7979936Z             {
2026-06-04T12:50:05.7981226Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.7982887Z               "line": 172
2026-06-04T12:50:05.7984114Z             }
2026-06-04T12:50:05.7985190Z           ]
2026-06-04T12:50:05.7986214Z         }
2026-06-04T12:50:05.7987223Z       }
2026-06-04T12:50:05.7988213Z     },
2026-06-04T12:50:05.7989249Z     {
2026-06-04T12:50:05.7990597Z       "id": "REQ-API-3",
2026-06-04T12:50:05.7992728Z       "title": "commune/signoff are file-drops, not commands",
2026-06-04T12:50:05.7994823Z       "requiredStages": [
2026-06-04T12:50:05.7996238Z         "impl",
2026-06-04T12:50:05.7997446Z         "unit",
2026-06-04T12:50:05.7998721Z         "int"
2026-06-04T12:50:05.8000106Z       ],
2026-06-04T12:50:05.8001256Z       "stages": {
2026-06-04T12:50:05.8002472Z         "doc": {
2026-06-04T12:50:05.8003785Z           "complete": false,
2026-06-04T12:50:05.8005241Z           "evidence": []
2026-06-04T12:50:05.8006639Z         },
2026-06-04T12:50:05.8007822Z         "impl": {
2026-06-04T12:50:05.8009100Z           "complete": true,
2026-06-04T12:50:05.8010835Z           "evidence": [
2026-06-04T12:50:05.8012084Z             {
2026-06-04T12:50:05.8013518Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:05.8015511Z               "line": 27
2026-06-04T12:50:05.8016912Z             },
2026-06-04T12:50:05.8018257Z             {
2026-06-04T12:50:05.8020208Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.8022295Z               "line": 233
2026-06-04T12:50:05.8023488Z             }
2026-06-04T12:50:05.8024803Z           ]
2026-06-04T12:50:05.8025788Z         },
2026-06-04T12:50:05.8026783Z         "int": {
2026-06-04T12:50:05.8027882Z           "complete": true,
2026-06-04T12:50:05.8029134Z           "evidence": [
2026-06-04T12:50:05.8030374Z             {
2026-06-04T12:50:05.8031622Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:05.8033317Z               "line": 203
2026-06-04T12:50:05.8034511Z             }
2026-06-04T12:50:05.8035526Z           ]
2026-06-04T12:50:05.8036491Z         },
2026-06-04T12:50:05.8037499Z         "unit": {
2026-06-04T12:50:05.8038598Z           "complete": true,
2026-06-04T12:50:05.8039889Z           "evidence": [
2026-06-04T12:50:05.8041029Z             {
2026-06-04T12:50:05.8042248Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:05.8043875Z               "line": 230
2026-06-04T12:50:05.8045045Z             },
2026-06-04T12:50:05.8046064Z             {
2026-06-04T12:50:05.8047322Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.8048974Z               "line": 416
2026-06-04T12:50:05.8050176Z             }
2026-06-04T12:50:05.8051176Z           ]
2026-06-04T12:50:05.8052155Z         }
2026-06-04T12:50:05.8053110Z       }
2026-06-04T12:50:05.8054069Z     },
2026-06-04T12:50:05.8055009Z     {
2026-06-04T12:50:05.8056004Z       "id": "REQ-ARCH-1",
2026-06-04T12:50:05.8057887Z       "title": "Many small acyclically-layered crates",
2026-06-04T12:50:05.8059656Z       "requiredStages": [
2026-06-04T12:50:05.8060868Z         "impl"
2026-06-04T12:50:05.8061886Z       ],
2026-06-04T12:50:05.8062863Z       "stages": {
2026-06-04T12:50:05.8063966Z         "doc": {
2026-06-04T12:50:05.8065068Z           "complete": false,
2026-06-04T12:50:05.8066345Z           "evidence": []
2026-06-04T12:50:05.8067527Z         },
2026-06-04T12:50:05.8068513Z         "impl": {
2026-06-04T12:50:05.8069658Z           "complete": true,
2026-06-04T12:50:05.8070912Z           "evidence": [
2026-06-04T12:50:05.8072051Z             {
2026-06-04T12:50:05.8073232Z               "path": "crates/spt-msg/src/lib.rs",
2026-06-04T12:50:05.8074788Z               "line": 16
2026-06-04T12:50:05.8075950Z             },
2026-06-04T12:50:05.8076967Z             {
2026-06-04T12:50:05.8078366Z               "path": "crates/spt-proto/src/lib.rs",
2026-06-04T12:50:05.8080006Z               "line": 12
2026-06-04T12:50:05.8081174Z             },
2026-06-04T12:50:05.8082189Z             {
2026-06-04T12:50:05.8083385Z               "path": "crates/spt-store/src/lib.rs",
2026-06-04T12:50:05.8084981Z               "line": 12
2026-06-04T12:50:05.8086143Z             }
2026-06-04T12:50:05.8087135Z           ]
2026-06-04T12:50:05.8088104Z         },
2026-06-04T12:50:05.8089095Z         "int": {
2026-06-04T12:50:05.8090218Z           "complete": false,
2026-06-04T12:50:05.8091490Z           "evidence": []
2026-06-04T12:50:05.8092662Z         },
2026-06-04T12:50:05.8093635Z         "unit": {
2026-06-04T12:50:05.8094741Z           "complete": false,
2026-06-04T12:50:05.8095998Z           "evidence": []
2026-06-04T12:50:05.8097149Z         }
2026-06-04T12:50:05.8098113Z       }
2026-06-04T12:50:05.8099055Z     },
2026-06-04T12:50:05.8100053Z     {
2026-06-04T12:50:05.8101030Z       "id": "REQ-ARCH-2",
2026-06-04T12:50:05.8102752Z       "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg",
2026-06-04T12:50:05.8104753Z       "requiredStages": [
2026-06-04T12:50:05.8105965Z         "impl"
2026-06-04T12:50:05.8106979Z       ],
2026-06-04T12:50:05.8107949Z       "stages": {
2026-06-04T12:50:05.8109014Z         "doc": {
2026-06-04T12:50:05.8110150Z           "complete": false,
2026-06-04T12:50:05.8111439Z           "evidence": []
2026-06-04T12:50:05.8112602Z         },
2026-06-04T12:50:05.8113590Z         "impl": {
2026-06-04T12:50:05.8114701Z           "complete": true,
2026-06-04T12:50:05.8115946Z           "evidence": [
2026-06-04T12:50:05.8117076Z             {
2026-06-04T12:50:05.8118290Z               "path": "crates/spt-runtime/src/lib.rs",
2026-06-04T12:50:05.8119958Z               "line": 18
2026-06-04T12:50:05.8121099Z             }
2026-06-04T12:50:05.8122098Z           ]
2026-06-04T12:50:05.8123058Z         },
2026-06-04T12:50:05.8124037Z         "int": {
2026-06-04T12:50:05.8125141Z           "complete": false,
2026-06-04T12:50:05.8126438Z           "evidence": []
2026-06-04T12:50:05.8127619Z         },
2026-06-04T12:50:05.8128612Z         "unit": {
2026-06-04T12:50:05.8129760Z           "complete": false,
2026-06-04T12:50:05.8142094Z           "evidence": []
2026-06-04T12:50:05.8143398Z         }
2026-06-04T12:50:05.8144362Z       }
2026-06-04T12:50:05.8145293Z     },
2026-06-04T12:50:05.8146239Z     {
2026-06-04T12:50:05.8147235Z       "id": "REQ-ARCH-3",
2026-06-04T12:50:05.8149316Z       "title": "Wire-protocol version independent of crate semver, N-1 compat window",
2026-06-04T12:50:05.8151660Z       "requiredStages": [
2026-06-04T12:50:05.8152881Z         "impl",
2026-06-04T12:50:05.8153925Z         "unit"
2026-06-04T12:50:05.8154943Z       ],
2026-06-04T12:50:05.8155921Z       "stages": {
2026-06-04T12:50:05.8156989Z         "doc": {
2026-06-04T12:50:05.8158092Z           "complete": false,
2026-06-04T12:50:05.8159414Z           "evidence": []
2026-06-04T12:50:05.8160593Z         },
2026-06-04T12:50:05.8161664Z         "impl": {
2026-06-04T12:50:05.8162765Z           "complete": true,
2026-06-04T12:50:05.8164402Z           "evidence": [
2026-06-04T12:50:05.8165525Z             {
2026-06-04T12:50:05.8166771Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:50:05.8168394Z               "line": 34
2026-06-04T12:50:05.8169599Z             },
2026-06-04T12:50:05.8170619Z             {
2026-06-04T12:50:05.8171862Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:50:05.8173498Z               "line": 41
2026-06-04T12:50:05.8174650Z             }
2026-06-04T12:50:05.8175646Z           ]
2026-06-04T12:50:05.8176620Z         },
2026-06-04T12:50:05.8177595Z         "int": {
2026-06-04T12:50:05.8178687Z           "complete": false,
2026-06-04T12:50:05.8179991Z           "evidence": []
2026-06-04T12:50:05.8181163Z         },
2026-06-04T12:50:05.8182127Z         "unit": {
2026-06-04T12:50:05.8183230Z           "complete": true,
2026-06-04T12:50:05.8184454Z           "evidence": [
2026-06-04T12:50:05.8185759Z             {
2026-06-04T12:50:05.8186988Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:50:05.8188617Z               "line": 51
2026-06-04T12:50:05.8189805Z             },
2026-06-04T12:50:05.8190826Z             {
2026-06-04T12:50:05.8192065Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:50:05.8193699Z               "line": 65
2026-06-04T12:50:05.8194848Z             },
2026-06-04T12:50:05.8195852Z             {
2026-06-04T12:50:05.8197078Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:50:05.8198701Z               "line": 74
2026-06-04T12:50:05.8199941Z             }
2026-06-04T12:50:05.8200938Z           ]
2026-06-04T12:50:05.8201910Z         }
2026-06-04T12:50:05.8202864Z       }
2026-06-04T12:50:05.8203817Z     },
2026-06-04T12:50:05.8204758Z     {
2026-06-04T12:50:05.8205747Z       "id": "REQ-ARCH-4",
2026-06-04T12:50:05.8207497Z       "title": "Copy-verbatim the commodity layer from the sister project",
2026-06-04T12:50:05.8209596Z       "requiredStages": [
2026-06-04T12:50:05.8210814Z         "impl",
2026-06-04T12:50:05.8211851Z         "unit"
2026-06-04T12:50:05.8212864Z       ],
2026-06-04T12:50:05.8213826Z       "stages": {
2026-06-04T12:50:05.8214874Z         "doc": {
2026-06-04T12:50:05.8215967Z           "complete": false,
2026-06-04T12:50:05.8217236Z           "evidence": []
2026-06-04T12:50:05.8218394Z         },
2026-06-04T12:50:05.8219413Z         "impl": {
2026-06-04T12:50:05.8220513Z           "complete": true,
2026-06-04T12:50:05.8221741Z           "evidence": [
2026-06-04T12:50:05.8222872Z             {
2026-06-04T12:50:05.8224101Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8225691Z               "line": 63
2026-06-04T12:50:05.8226841Z             },
2026-06-04T12:50:05.8227859Z             {
2026-06-04T12:50:05.8229057Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8230682Z               "line": 77
2026-06-04T12:50:05.8231844Z             },
2026-06-04T12:50:05.8232864Z             {
2026-06-04T12:50:05.8234092Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8235678Z               "line": 97
2026-06-04T12:50:05.8236843Z             },
2026-06-04T12:50:05.8237853Z             {
2026-06-04T12:50:05.8239050Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8240668Z               "line": 112
2026-06-04T12:50:05.8247848Z             },
2026-06-04T12:50:05.8248919Z             {
2026-06-04T12:50:05.8250223Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8251819Z               "line": 162
2026-06-04T12:50:05.8252973Z             }
2026-06-04T12:50:05.8253965Z           ]
2026-06-04T12:50:05.8254928Z         },
2026-06-04T12:50:05.8255884Z         "int": {
2026-06-04T12:50:05.8256969Z           "complete": false,
2026-06-04T12:50:05.8258230Z           "evidence": []
2026-06-04T12:50:05.8259409Z         },
2026-06-04T12:50:05.8260394Z         "unit": {
2026-06-04T12:50:05.8261524Z           "complete": true,
2026-06-04T12:50:05.8263033Z           "evidence": [
2026-06-04T12:50:05.8264159Z             {
2026-06-04T12:50:05.8265350Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8266922Z               "line": 226
2026-06-04T12:50:05.8268068Z             },
2026-06-04T12:50:05.8269069Z             {
2026-06-04T12:50:05.8270298Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8271894Z               "line": 236
2026-06-04T12:50:05.8273052Z             },
2026-06-04T12:50:05.8274053Z             {
2026-06-04T12:50:05.8275250Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8276837Z               "line": 247
2026-06-04T12:50:05.8277997Z             },
2026-06-04T12:50:05.8278990Z             {
2026-06-04T12:50:05.8280221Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8281839Z               "line": 258
2026-06-04T12:50:05.8282986Z             },
2026-06-04T12:50:05.8284162Z             {
2026-06-04T12:50:05.8285389Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8287009Z               "line": 270
2026-06-04T12:50:05.8288184Z             },
2026-06-04T12:50:05.8289221Z             {
2026-06-04T12:50:05.8290429Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8292024Z               "line": 283
2026-06-04T12:50:05.8293183Z             },
2026-06-04T12:50:05.8294184Z             {
2026-06-04T12:50:05.8295375Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8296973Z               "line": 294
2026-06-04T12:50:05.8298143Z             },
2026-06-04T12:50:05.8299206Z             {
2026-06-04T12:50:05.8300422Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8302012Z               "line": 308
2026-06-04T12:50:05.8303186Z             },
2026-06-04T12:50:05.8304196Z             {
2026-06-04T12:50:05.8305400Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:05.8307005Z               "line": 336
2026-06-04T12:50:05.8308173Z             }
2026-06-04T12:50:05.8309240Z           ]
2026-06-04T12:50:05.8310217Z         }
2026-06-04T12:50:05.8311236Z       }
2026-06-04T12:50:05.8312184Z     },
2026-06-04T12:50:05.8313116Z     {
2026-06-04T12:50:05.8314101Z       "id": "REQ-DAEMON-1",
2026-06-04T12:50:05.8315820Z       "title": "One per-machine spt-daemon owning all per-machine state",
2026-06-04T12:50:05.8317829Z       "requiredStages": [
2026-06-04T12:50:05.8319014Z         "impl",
2026-06-04T12:50:05.8320391Z         "unit",
2026-06-04T12:50:05.8321413Z         "int"
2026-06-04T12:50:05.8322402Z       ],
2026-06-04T12:50:05.8323371Z       "stages": {
2026-06-04T12:50:05.8324479Z         "doc": {
2026-06-04T12:50:05.8325558Z           "complete": false,
2026-06-04T12:50:05.8326823Z           "evidence": []
2026-06-04T12:50:05.8327975Z         },
2026-06-04T12:50:05.8328951Z         "impl": {
2026-06-04T12:50:05.8330094Z           "complete": true,
2026-06-04T12:50:05.8331354Z           "evidence": [
2026-06-04T12:50:05.8332473Z             {
2026-06-04T12:50:05.8333750Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:05.8335361Z               "line": 12
2026-06-04T12:50:05.8336512Z             },
2026-06-04T12:50:05.8337516Z             {
2026-06-04T12:50:05.8338755Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8340439Z               "line": 16
2026-06-04T12:50:05.8341602Z             },
2026-06-04T12:50:05.8342600Z             {
2026-06-04T12:50:05.8343814Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T12:50:05.8345399Z               "line": 15
2026-06-04T12:50:05.8352348Z             },
2026-06-04T12:50:05.8353513Z             {
2026-06-04T12:50:05.8354680Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T12:50:05.8356228Z               "line": 13
2026-06-04T12:50:05.8357373Z             }
2026-06-04T12:50:05.8358362Z           ]
2026-06-04T12:50:05.8359428Z         },
2026-06-04T12:50:05.8360393Z         "int": {
2026-06-04T12:50:05.8361471Z           "complete": true,
2026-06-04T12:50:05.8362987Z           "evidence": [
2026-06-04T12:50:05.8364109Z             {
2026-06-04T12:50:05.8365383Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:50:05.8367049Z               "line": 32
2026-06-04T12:50:05.8368187Z             }
2026-06-04T12:50:05.8369222Z           ]
2026-06-04T12:50:05.8370198Z         },
2026-06-04T12:50:05.8371161Z         "unit": {
2026-06-04T12:50:05.8372245Z           "complete": true,
2026-06-04T12:50:05.8373469Z           "evidence": [
2026-06-04T12:50:05.8374586Z             {
2026-06-04T12:50:05.8375815Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:05.8377412Z               "line": 242
2026-06-04T12:50:05.8378572Z             },
2026-06-04T12:50:05.8379620Z             {
2026-06-04T12:50:05.8380839Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:05.8382598Z               "line": 250
2026-06-04T12:50:05.8383746Z             },
2026-06-04T12:50:05.8384761Z             {
2026-06-04T12:50:05.8385975Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:05.8387580Z               "line": 263
2026-06-04T12:50:05.8388733Z             },
2026-06-04T12:50:05.8389776Z             {
2026-06-04T12:50:05.8391006Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:05.8392602Z               "line": 271
2026-06-04T12:50:05.8393757Z             },
2026-06-04T12:50:05.8394767Z             {
2026-06-04T12:50:05.8396003Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8397656Z               "line": 528
2026-06-04T12:50:05.8398816Z             },
2026-06-04T12:50:05.8399864Z             {
2026-06-04T12:50:05.8401133Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8402770Z               "line": 587
2026-06-04T12:50:05.8403997Z             },
2026-06-04T12:50:05.8405134Z             {
2026-06-04T12:50:05.8406375Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T12:50:05.8407984Z               "line": 100
2026-06-04T12:50:05.8409148Z             },
2026-06-04T12:50:05.8410216Z             {
2026-06-04T12:50:05.8411421Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T12:50:05.8413008Z               "line": 125
2026-06-04T12:50:05.8414157Z             }
2026-06-04T12:50:05.8415160Z           ]
2026-06-04T12:50:05.8416114Z         }
2026-06-04T12:50:05.8417058Z       }
2026-06-04T12:50:05.8417982Z     },
2026-06-04T12:50:05.8418910Z     {
2026-06-04T12:50:05.8419951Z       "id": "REQ-DAEMON-2",
2026-06-04T12:50:05.8421489Z       "title": "Broker/brain split for seamless self-update",
2026-06-04T12:50:05.8423239Z       "requiredStages": [
2026-06-04T12:50:05.8424417Z         "impl",
2026-06-04T12:50:05.8425443Z         "unit",
2026-06-04T12:50:05.8426455Z         "int"
2026-06-04T12:50:05.8427445Z       ],
2026-06-04T12:50:05.8428405Z       "stages": {
2026-06-04T12:50:05.8429504Z         "doc": {
2026-06-04T12:50:05.8430582Z           "complete": false,
2026-06-04T12:50:05.8431853Z           "evidence": []
2026-06-04T12:50:05.8432980Z         },
2026-06-04T12:50:05.8433938Z         "impl": {
2026-06-04T12:50:05.8435005Z           "complete": true,
2026-06-04T12:50:05.8436216Z           "evidence": [
2026-06-04T12:50:05.8438301Z             {
2026-06-04T12:50:05.8439592Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:05.8441162Z               "line": 23
2026-06-04T12:50:05.8442299Z             },
2026-06-04T12:50:05.8443294Z             {
2026-06-04T12:50:05.8444474Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:05.8446035Z               "line": 489
2026-06-04T12:50:05.8447168Z             },
2026-06-04T12:50:05.8448160Z             {
2026-06-04T12:50:05.8449376Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:05.8450963Z               "line": 612
2026-06-04T12:50:05.8458381Z             },
2026-06-04T12:50:05.8459586Z             {
2026-06-04T12:50:05.8460810Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:05.8462819Z               "line": 32
2026-06-04T12:50:05.8463985Z             },
2026-06-04T12:50:05.8465016Z             {
2026-06-04T12:50:05.8466254Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:05.8467876Z               "line": 191
2026-06-04T12:50:05.8469056Z             },
2026-06-04T12:50:05.8470149Z             {
2026-06-04T12:50:05.8471382Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:05.8473004Z               "line": 510
2026-06-04T12:50:05.8474198Z             },
2026-06-04T12:50:05.8475219Z             {
2026-06-04T12:50:05.8476457Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:05.8478078Z               "line": 679
2026-06-04T12:50:05.8479284Z             },
2026-06-04T12:50:05.8480323Z             {
2026-06-04T12:50:05.8481552Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:50:05.8483370Z               "line": 11
2026-06-04T12:50:05.8484560Z             },
2026-06-04T12:50:05.8485594Z             {
2026-06-04T12:50:05.8486823Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T12:50:05.8488440Z               "line": 53
2026-06-04T12:50:05.8489646Z             },
2026-06-04T12:50:05.8490674Z             {
2026-06-04T12:50:05.8491890Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.8493472Z               "line": 13
2026-06-04T12:50:05.8494636Z             },
2026-06-04T12:50:05.8495663Z             {
2026-06-04T12:50:05.8496902Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8498519Z               "line": 27
2026-06-04T12:50:05.8499720Z             },
2026-06-04T12:50:05.8500750Z             {
2026-06-04T12:50:05.8502011Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8503628Z               "line": 94
2026-06-04T12:50:05.8504865Z             },
2026-06-04T12:50:05.8505893Z             {
2026-06-04T12:50:05.8507150Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8508797Z               "line": 393
2026-06-04T12:50:05.8510032Z             },
2026-06-04T12:50:05.8511069Z             {
2026-06-04T12:50:05.8512339Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8513997Z               "line": 460
2026-06-04T12:50:05.8515174Z             },
2026-06-04T12:50:05.8516201Z             {
2026-06-04T12:50:05.8517447Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8519084Z               "line": 494
2026-06-04T12:50:05.8520294Z             },
2026-06-04T12:50:05.8521332Z             {
2026-06-04T12:50:05.8522568Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8524200Z               "line": 536
2026-06-04T12:50:05.8525370Z             },
2026-06-04T12:50:05.8526383Z             {
2026-06-04T12:50:05.8527609Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8529290Z               "line": 581
2026-06-04T12:50:05.8530472Z             },
2026-06-04T12:50:05.8531491Z             {
2026-06-04T12:50:05.8532747Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:50:05.8534404Z               "line": 10
2026-06-04T12:50:05.8535562Z             }
2026-06-04T12:50:05.8536582Z           ]
2026-06-04T12:50:05.8537562Z         },
2026-06-04T12:50:05.8538543Z         "int": {
2026-06-04T12:50:05.8539670Z           "complete": true,
2026-06-04T12:50:05.8540913Z           "evidence": [
2026-06-04T12:50:05.8542047Z             {
2026-06-04T12:50:05.8543288Z               "path": "crates/spt-daemon/tests/broker.rs",
2026-06-04T12:50:05.8544940Z               "line": 17
2026-06-04T12:50:05.8546107Z             },
2026-06-04T12:50:05.8547119Z             {
2026-06-04T12:50:05.8548420Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:50:05.8550138Z               "line": 33
2026-06-04T12:50:05.8551314Z             },
2026-06-04T12:50:05.8552338Z             {
2026-06-04T12:50:05.8553810Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T12:50:05.8555480Z               "line": 19
2026-06-04T12:50:05.8556650Z             },
2026-06-04T12:50:05.8557668Z             {
2026-06-04T12:50:05.8558946Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:50:05.8560675Z               "line": 70
2026-06-04T12:50:05.8561840Z             },
2026-06-04T12:50:05.8568845Z             {
2026-06-04T12:50:05.8570312Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:50:05.8572024Z               "line": 90
2026-06-04T12:50:05.8573189Z             },
2026-06-04T12:50:05.8574208Z             {
2026-06-04T12:50:05.8575498Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:50:05.8577172Z               "line": 160
2026-06-04T12:50:05.8578331Z             },
2026-06-04T12:50:05.8579374Z             {
2026-06-04T12:50:05.8580945Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:50:05.8582654Z               "line": 196
2026-06-04T12:50:05.8583829Z             },
2026-06-04T12:50:05.8584850Z             {
2026-06-04T12:50:05.8586131Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T12:50:05.8587812Z               "line": 121
2026-06-04T12:50:05.8588978Z             }
2026-06-04T12:50:05.8590013Z           ]
2026-06-04T12:50:05.8590995Z         },
2026-06-04T12:50:05.8591977Z         "unit": {
2026-06-04T12:50:05.8593090Z           "complete": true,
2026-06-04T12:50:05.8594316Z           "evidence": [
2026-06-04T12:50:05.8595451Z             {
2026-06-04T12:50:05.8596667Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:50:05.8598263Z               "line": 62
2026-06-04T12:50:05.8599444Z             },
2026-06-04T12:50:05.8600471Z             {
2026-06-04T12:50:05.8601683Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:50:05.8603292Z               "line": 76
2026-06-04T12:50:05.8604457Z             },
2026-06-04T12:50:05.8605496Z             {
2026-06-04T12:50:05.8606706Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:50:05.8608290Z               "line": 88
2026-06-04T12:50:05.8609492Z             },
2026-06-04T12:50:05.8610520Z             {
2026-06-04T12:50:05.8611763Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:50:05.8613371Z               "line": 264
2026-06-04T12:50:05.8614550Z             },
2026-06-04T12:50:05.8615572Z             {
2026-06-04T12:50:05.8616766Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.8618325Z               "line": 506
2026-06-04T12:50:05.8619531Z             },
2026-06-04T12:50:05.8620554Z             {
2026-06-04T12:50:05.8621746Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.8623314Z               "line": 514
2026-06-04T12:50:05.8624486Z             },
2026-06-04T12:50:05.8625503Z             {
2026-06-04T12:50:05.8626707Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.8628278Z               "line": 531
2026-06-04T12:50:05.8629492Z             },
2026-06-04T12:50:05.8630556Z             {
2026-06-04T12:50:05.8631744Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.8633310Z               "line": 576
2026-06-04T12:50:05.8634479Z             },
2026-06-04T12:50:05.8635499Z             {
2026-06-04T12:50:05.8636726Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8638333Z               "line": 648
2026-06-04T12:50:05.8639551Z             },
2026-06-04T12:50:05.8640596Z             {
2026-06-04T12:50:05.8641834Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.8643444Z               "line": 660
2026-06-04T12:50:05.8644608Z             },
2026-06-04T12:50:05.8645645Z             {
2026-06-04T12:50:05.8646901Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:50:05.8648569Z               "line": 112
2026-06-04T12:50:05.8649781Z             }
2026-06-04T12:50:05.8650989Z           ]
2026-06-04T12:50:05.8651967Z         }
2026-06-04T12:50:05.8652927Z       }
2026-06-04T12:50:05.8653880Z     },
2026-06-04T12:50:05.8654844Z     {
2026-06-04T12:50:05.8655844Z       "id": "REQ-DAEMON-3",
2026-06-04T12:50:05.8657483Z       "title": "Any api invocation auto-starts the daemon if absent",
2026-06-04T12:50:05.8659420Z       "requiredStages": [
2026-06-04T12:50:05.8660627Z         "impl",
2026-06-04T12:50:05.8661665Z         "unit",
2026-06-04T12:50:05.8662704Z         "int"
2026-06-04T12:50:05.8663711Z       ],
2026-06-04T12:50:05.8664679Z       "stages": {
2026-06-04T12:50:05.8665751Z         "doc": {
2026-06-04T12:50:05.8666847Z           "complete": false,
2026-06-04T12:50:05.8668121Z           "evidence": []
2026-06-04T12:50:05.8675007Z         },
2026-06-04T12:50:05.8676173Z         "impl": {
2026-06-04T12:50:05.8677285Z           "complete": true,
2026-06-04T12:50:05.8678516Z           "evidence": [
2026-06-04T12:50:05.8680010Z             {
2026-06-04T12:50:05.8681240Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T12:50:05.8682885Z               "line": 14
2026-06-04T12:50:05.8684018Z             },
2026-06-04T12:50:05.8685033Z             {
2026-06-04T12:50:05.8686278Z               "path": "crates/spt-daemon/src/endpoint.rs",
2026-06-04T12:50:05.8687898Z               "line": 11
2026-06-04T12:50:05.8689041Z             },
2026-06-04T12:50:05.8690098Z             {
2026-06-04T12:50:05.8691256Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:50:05.8692810Z               "line": 209
2026-06-04T12:50:05.8693969Z             },
2026-06-04T12:50:05.8694985Z             {
2026-06-04T12:50:05.8696115Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:05.8697612Z               "line": 362
2026-06-04T12:50:05.8698772Z             }
2026-06-04T12:50:05.8699810Z           ]
2026-06-04T12:50:05.8700786Z         },
2026-06-04T12:50:05.8701769Z         "int": {
2026-06-04T12:50:05.8702872Z           "complete": true,
2026-06-04T12:50:05.8704107Z           "evidence": [
2026-06-04T12:50:05.8705223Z             {
2026-06-04T12:50:05.8706435Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:05.8708033Z               "line": 43
2026-06-04T12:50:05.8709219Z             },
2026-06-04T12:50:05.8710241Z             {
2026-06-04T12:50:05.8711462Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:05.8713099Z               "line": 320
2026-06-04T12:50:05.8714273Z             }
2026-06-04T12:50:05.8715266Z           ]
2026-06-04T12:50:05.8716235Z         },
2026-06-04T12:50:05.8717205Z         "unit": {
2026-06-04T12:50:05.8718295Z           "complete": true,
2026-06-04T12:50:05.8719564Z           "evidence": [
2026-06-04T12:50:05.8720696Z             {
2026-06-04T12:50:05.8721908Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T12:50:05.8723530Z               "line": 242
2026-06-04T12:50:05.8724701Z             }
2026-06-04T12:50:05.8725693Z           ]
2026-06-04T12:50:05.8726664Z         }
2026-06-04T12:50:05.8727632Z       }
2026-06-04T12:50:05.8728565Z     },
2026-06-04T12:50:05.8729540Z     {
2026-06-04T12:50:05.8730532Z       "id": "REQ-DAEMON-4",
2026-06-04T12:50:05.8731959Z       "title": "Honor every KNOWN-HAZARDS invariant",
2026-06-04T12:50:05.8733581Z       "requiredStages": [
2026-06-04T12:50:05.8734771Z         "impl",
2026-06-04T12:50:05.8735805Z         "unit",
2026-06-04T12:50:05.8736833Z         "int"
2026-06-04T12:50:05.8737827Z       ],
2026-06-04T12:50:05.8738782Z       "stages": {
2026-06-04T12:50:05.8739856Z         "doc": {
2026-06-04T12:50:05.8740944Z           "complete": false,
2026-06-04T12:50:05.8742215Z           "evidence": []
2026-06-04T12:50:05.8743358Z         },
2026-06-04T12:50:05.8744334Z         "impl": {
2026-06-04T12:50:05.8745427Z           "complete": true,
2026-06-04T12:50:05.8746651Z           "evidence": [
2026-06-04T12:50:05.8747768Z             {
2026-06-04T12:50:05.8749032Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8750902Z               "line": 339
2026-06-04T12:50:05.8752070Z             },
2026-06-04T12:50:05.8753100Z             {
2026-06-04T12:50:05.8754344Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8755991Z               "line": 401
2026-06-04T12:50:05.8757161Z             },
2026-06-04T12:50:05.8758182Z             {
2026-06-04T12:50:05.8759466Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8761108Z               "line": 423
2026-06-04T12:50:05.8762265Z             }
2026-06-04T12:50:05.8763287Z           ]
2026-06-04T12:50:05.8764257Z         },
2026-06-04T12:50:05.8765233Z         "int": {
2026-06-04T12:50:05.8766323Z           "complete": true,
2026-06-04T12:50:05.8767554Z           "evidence": [
2026-06-04T12:50:05.8768672Z             {
2026-06-04T12:50:05.8769983Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:50:05.8771823Z               "line": 34
2026-06-04T12:50:05.8778565Z             }
2026-06-04T12:50:05.8779888Z           ]
2026-06-04T12:50:05.8780890Z         },
2026-06-04T12:50:05.8781881Z         "unit": {
2026-06-04T12:50:05.8782985Z           "complete": true,
2026-06-04T12:50:05.8784226Z           "evidence": [
2026-06-04T12:50:05.8785356Z             {
2026-06-04T12:50:05.8786578Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:05.8788172Z               "line": 340
2026-06-04T12:50:05.8789395Z             },
2026-06-04T12:50:05.8790423Z             {
2026-06-04T12:50:05.8791678Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8793322Z               "line": 717
2026-06-04T12:50:05.8794480Z             },
2026-06-04T12:50:05.8795489Z             {
2026-06-04T12:50:05.8796721Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8798340Z               "line": 768
2026-06-04T12:50:05.8799541Z             },
2026-06-04T12:50:05.8800591Z             {
2026-06-04T12:50:05.8801824Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8803470Z               "line": 792
2026-06-04T12:50:05.8804621Z             },
2026-06-04T12:50:05.8805629Z             {
2026-06-04T12:50:05.8806853Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.8808466Z               "line": 822
2026-06-04T12:50:05.8809648Z             }
2026-06-04T12:50:05.8810658Z           ]
2026-06-04T12:50:05.8811616Z         }
2026-06-04T12:50:05.8812568Z       }
2026-06-04T12:50:05.8813504Z     },
2026-06-04T12:50:05.8814436Z     {
2026-06-04T12:50:05.8815447Z       "id": "REQ-DOCS-1",
2026-06-04T12:50:05.8817299Z       "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths",
2026-06-04T12:50:05.8819545Z       "requiredStages": [],
2026-06-04T12:50:05.8820788Z       "stages": {
2026-06-04T12:50:05.8821838Z         "doc": {
2026-06-04T12:50:05.8822922Z           "complete": false,
2026-06-04T12:50:05.8824194Z           "evidence": []
2026-06-04T12:50:05.8831801Z         },
2026-06-04T12:50:05.8832893Z         "impl": {
2026-06-04T12:50:05.8833987Z           "complete": false,
2026-06-04T12:50:05.8835252Z           "evidence": []
2026-06-04T12:50:05.8836407Z         },
2026-06-04T12:50:05.8837389Z         "int": {
2026-06-04T12:50:05.8838484Z           "complete": false,
2026-06-04T12:50:05.8839790Z           "evidence": []
2026-06-04T12:50:05.8840947Z         },
2026-06-04T12:50:05.8841917Z         "unit": {
2026-06-04T12:50:05.8842998Z           "complete": false,
2026-06-04T12:50:05.8844250Z           "evidence": []
2026-06-04T12:50:05.8845400Z         }
2026-06-04T12:50:05.8846366Z       }
2026-06-04T12:50:05.8847290Z     },
2026-06-04T12:50:05.8848229Z     {
2026-06-04T12:50:05.8849251Z       "id": "REQ-DOCS-2",
2026-06-04T12:50:05.8850899Z       "title": "Sub-10-minute runnable killer quickstart per audience",
2026-06-04T12:50:05.8852817Z       "requiredStages": [],
2026-06-04T12:50:05.8854063Z       "stages": {
2026-06-04T12:50:05.8855109Z         "doc": {
2026-06-04T12:50:05.8856634Z           "complete": false,
2026-06-04T12:50:05.8857901Z           "evidence": []
2026-06-04T12:50:05.8859047Z         },
2026-06-04T12:50:05.8860073Z         "impl": {
2026-06-04T12:50:05.8861170Z           "complete": false,
2026-06-04T12:50:05.8862433Z           "evidence": []
2026-06-04T12:50:05.8863587Z         },
2026-06-04T12:50:05.8864563Z         "int": {
2026-06-04T12:50:05.8865647Z           "complete": false,
2026-06-04T12:50:05.8866903Z           "evidence": []
2026-06-04T12:50:05.8868056Z         },
2026-06-04T12:50:05.8869028Z         "unit": {
2026-06-04T12:50:05.8870161Z           "complete": false,
2026-06-04T12:50:05.8871405Z           "evidence": []
2026-06-04T12:50:05.8872559Z         }
2026-06-04T12:50:05.8873516Z       }
2026-06-04T12:50:05.8874450Z     },
2026-06-04T12:50:05.8875393Z     {
2026-06-04T12:50:05.8883249Z       "id": "REQ-DOCS-3",
2026-06-04T12:50:05.8885295Z       "title": "Diátaxis structure; one canonical way to do X",
2026-06-04T12:50:05.8887441Z       "requiredStages": [],
2026-06-04T12:50:05.8888697Z       "stages": {
2026-06-04T12:50:05.8889830Z         "doc": {
2026-06-04T12:50:05.8890917Z           "complete": false,
2026-06-04T12:50:05.8892167Z           "evidence": []
2026-06-04T12:50:05.8893311Z         },
2026-06-04T12:50:05.8894280Z         "impl": {
2026-06-04T12:50:05.8895377Z           "complete": false,
2026-06-04T12:50:05.8896632Z           "evidence": []
2026-06-04T12:50:05.8897773Z         },
2026-06-04T12:50:05.8898737Z         "int": {
2026-06-04T12:50:05.8899864Z           "complete": false,
2026-06-04T12:50:05.8901130Z           "evidence": []
2026-06-04T12:50:05.8902266Z         },
2026-06-04T12:50:05.8903240Z         "unit": {
2026-06-04T12:50:05.8904317Z           "complete": false,
2026-06-04T12:50:05.8905559Z           "evidence": []
2026-06-04T12:50:05.8906707Z         }
2026-06-04T12:50:05.8907657Z       }
2026-06-04T12:50:05.8908595Z     },
2026-06-04T12:50:05.8909686Z     {
2026-06-04T12:50:05.8910675Z       "id": "REQ-DOCS-4",
2026-06-04T12:50:05.8912514Z       "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)",
2026-06-04T12:50:05.8914673Z       "requiredStages": [],
2026-06-04T12:50:05.8915891Z       "stages": {
2026-06-04T12:50:05.8916937Z         "doc": {
2026-06-04T12:50:05.8918017Z           "complete": false,
2026-06-04T12:50:05.8919300Z           "evidence": []
2026-06-04T12:50:05.8920442Z         },
2026-06-04T12:50:05.8921418Z         "impl": {
2026-06-04T12:50:05.8922502Z           "complete": false,
2026-06-04T12:50:05.8923760Z           "evidence": []
2026-06-04T12:50:05.8924910Z         },
2026-06-04T12:50:05.8925890Z         "int": {
2026-06-04T12:50:05.8926965Z           "complete": false,
2026-06-04T12:50:05.8928209Z           "evidence": []
2026-06-04T12:50:05.8929384Z         },
2026-06-04T12:50:05.8930352Z         "unit": {
2026-06-04T12:50:05.8931438Z           "complete": false,
2026-06-04T12:50:05.8932706Z           "evidence": []
2026-06-04T12:50:05.8933967Z         }
2026-06-04T12:50:05.8934971Z       }
2026-06-04T12:50:05.8935905Z     },
2026-06-04T12:50:05.8936841Z     {
2026-06-04T12:50:05.8937812Z       "id": "REQ-DOCS-5",
2026-06-04T12:50:05.8939752Z       "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked",
2026-06-04T12:50:05.8941927Z       "requiredStages": [],
2026-06-04T12:50:05.8943145Z       "stages": {
2026-06-04T12:50:05.8944187Z         "doc": {
2026-06-04T12:50:05.8946444Z           "complete": false,
2026-06-04T12:50:05.8948055Z           "evidence": []
2026-06-04T12:50:05.8949281Z         },
2026-06-04T12:50:05.8950261Z         "impl": {
2026-06-04T12:50:05.8951346Z           "complete": false,
2026-06-04T12:50:05.8952590Z           "evidence": []
2026-06-04T12:50:05.8953727Z         },
2026-06-04T12:50:05.8955269Z         "int": {
2026-06-04T12:50:05.8956630Z           "complete": false,
2026-06-04T12:50:05.8957899Z           "evidence": []
2026-06-04T12:50:05.8959113Z         },
2026-06-04T12:50:05.8960140Z         "unit": {
2026-06-04T12:50:05.8961543Z           "complete": false,
2026-06-04T12:50:05.8962801Z           "evidence": []
2026-06-04T12:50:05.8963951Z         }
2026-06-04T12:50:05.8964911Z       }
2026-06-04T12:50:05.8965850Z     },
2026-06-04T12:50:05.8966795Z     {
2026-06-04T12:50:05.8967781Z       "id": "REQ-EP-1",
2026-06-04T12:50:05.8969265Z       "title": "Day-one endpoint types; open type system",
2026-06-04T12:50:05.8970958Z       "requiredStages": [
2026-06-04T12:50:05.8972152Z         "impl",
2026-06-04T12:50:05.8973191Z         "unit"
2026-06-04T12:50:05.8974199Z       ],
2026-06-04T12:50:05.8975152Z       "stages": {
2026-06-04T12:50:05.8976204Z         "doc": {
2026-06-04T12:50:05.8977288Z           "complete": false,
2026-06-04T12:50:05.8978551Z           "evidence": []
2026-06-04T12:50:05.8979751Z         },
2026-06-04T12:50:05.8980730Z         "impl": {
2026-06-04T12:50:05.8981828Z           "complete": true,
2026-06-04T12:50:05.8983258Z           "evidence": [
2026-06-04T12:50:05.8984382Z             {
2026-06-04T12:50:05.8985643Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.8987255Z               "line": 77
2026-06-04T12:50:05.8988405Z             },
2026-06-04T12:50:05.8989507Z             {
2026-06-04T12:50:05.8990736Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.8992346Z               "line": 94
2026-06-04T12:50:05.8993577Z             }
2026-06-04T12:50:05.8994585Z           ]
2026-06-04T12:50:05.8995563Z         },
2026-06-04T12:50:05.8996543Z         "int": {
2026-06-04T12:50:05.8997657Z           "complete": false,
2026-06-04T12:50:05.8998919Z           "evidence": []
2026-06-04T12:50:05.9000167Z         },
2026-06-04T12:50:05.9001161Z         "unit": {
2026-06-04T12:50:05.9002252Z           "complete": true,
2026-06-04T12:50:05.9011303Z           "evidence": [
2026-06-04T12:50:05.9012532Z             {
2026-06-04T12:50:05.9013793Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9015465Z               "line": 161
2026-06-04T12:50:05.9016653Z             },
2026-06-04T12:50:05.9017670Z             {
2026-06-04T12:50:05.9018898Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9020576Z               "line": 178
2026-06-04T12:50:05.9021741Z             }
2026-06-04T12:50:05.9022764Z           ]
2026-06-04T12:50:05.9023739Z         }
2026-06-04T12:50:05.9024703Z       }
2026-06-04T12:50:05.9025650Z     },
2026-06-04T12:50:05.9026604Z     {
2026-06-04T12:50:05.9027584Z       "id": "REQ-EP-2",
2026-06-04T12:50:05.9029232Z       "title": "Agent endpoints vs Shells distinction in the type model",
2026-06-04T12:50:05.9031195Z       "requiredStages": [
2026-06-04T12:50:05.9032411Z         "impl",
2026-06-04T12:50:05.9033441Z         "unit"
2026-06-04T12:50:05.9034456Z       ],
2026-06-04T12:50:05.9035432Z       "stages": {
2026-06-04T12:50:05.9036488Z         "doc": {
2026-06-04T12:50:05.9037576Z           "complete": false,
2026-06-04T12:50:05.9038862Z           "evidence": []
2026-06-04T12:50:05.9040074Z         },
2026-06-04T12:50:05.9041051Z         "impl": {
2026-06-04T12:50:05.9042153Z           "complete": true,
2026-06-04T12:50:05.9043379Z           "evidence": [
2026-06-04T12:50:05.9044517Z             {
2026-06-04T12:50:05.9045750Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9047365Z               "line": 114
2026-06-04T12:50:05.9048526Z             },
2026-06-04T12:50:05.9049585Z             {
2026-06-04T12:50:05.9050821Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9052431Z               "line": 131
2026-06-04T12:50:05.9053617Z             },
2026-06-04T12:50:05.9054636Z             {
2026-06-04T12:50:05.9055857Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9057465Z               "line": 138
2026-06-04T12:50:05.9058614Z             }
2026-06-04T12:50:05.9059648Z           ]
2026-06-04T12:50:05.9060641Z         },
2026-06-04T12:50:05.9061614Z         "int": {
2026-06-04T12:50:05.9062700Z           "complete": false,
2026-06-04T12:50:05.9064307Z           "evidence": []
2026-06-04T12:50:05.9065456Z         },
2026-06-04T12:50:05.9066434Z         "unit": {
2026-06-04T12:50:05.9067520Z           "complete": true,
2026-06-04T12:50:05.9068745Z           "evidence": [
2026-06-04T12:50:05.9069921Z             {
2026-06-04T12:50:05.9071151Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9072762Z               "line": 193
2026-06-04T12:50:05.9073928Z             },
2026-06-04T12:50:05.9074936Z             {
2026-06-04T12:50:05.9076147Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9077743Z               "line": 211
2026-06-04T12:50:05.9078896Z             },
2026-06-04T12:50:05.9079939Z             {
2026-06-04T12:50:05.9081158Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:50:05.9082770Z               "line": 224
2026-06-04T12:50:05.9084103Z             }
2026-06-04T12:50:05.9085100Z           ]
2026-06-04T12:50:05.9086079Z         }
2026-06-04T12:50:05.9087029Z       }
2026-06-04T12:50:05.9087963Z     },
2026-06-04T12:50:05.9088914Z     {
2026-06-04T12:50:05.9089941Z       "id": "REQ-EP-3",
2026-06-04T12:50:05.9091691Z       "title": "Messaging payloads carry typed operation commands + file blobs",
2026-06-04T12:50:05.9093790Z       "requiredStages": [
2026-06-04T12:50:05.9094988Z         "impl",
2026-06-04T12:50:05.9096014Z         "unit"
2026-06-04T12:50:05.9097011Z       ],
2026-06-04T12:50:05.9097973Z       "stages": {
2026-06-04T12:50:05.9099023Z         "doc": {
2026-06-04T12:50:05.9100139Z           "complete": false,
2026-06-04T12:50:05.9101390Z           "evidence": []
2026-06-04T12:50:05.9102524Z         },
2026-06-04T12:50:05.9103503Z         "impl": {
2026-06-04T12:50:05.9104597Z           "complete": true,
2026-06-04T12:50:05.9105830Z           "evidence": [
2026-06-04T12:50:05.9106944Z             {
2026-06-04T12:50:05.9138582Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9141205Z               "line": 31
2026-06-04T12:50:05.9142338Z             },
2026-06-04T12:50:05.9143321Z             {
2026-06-04T12:50:05.9144514Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9146091Z               "line": 49
2026-06-04T12:50:05.9147202Z             }
2026-06-04T12:50:05.9148172Z           ]
2026-06-04T12:50:05.9149104Z         },
2026-06-04T12:50:05.9150428Z         "int": {
2026-06-04T12:50:05.9151488Z           "complete": false,
2026-06-04T12:50:05.9152713Z           "evidence": []
2026-06-04T12:50:05.9153838Z         },
2026-06-04T12:50:05.9154786Z         "unit": {
2026-06-04T12:50:05.9155854Z           "complete": true,
2026-06-04T12:50:05.9157049Z           "evidence": [
2026-06-04T12:50:05.9158143Z             {
2026-06-04T12:50:05.9159527Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9161280Z               "line": 156
2026-06-04T12:50:05.9162430Z             },
2026-06-04T12:50:05.9163406Z             {
2026-06-04T12:50:05.9164606Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9166184Z               "line": 164
2026-06-04T12:50:05.9167307Z             },
2026-06-04T12:50:05.9168277Z             {
2026-06-04T12:50:05.9169512Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9171441Z               "line": 177
2026-06-04T12:50:05.9172557Z             },
2026-06-04T12:50:05.9173528Z             {
2026-06-04T12:50:05.9174718Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9176271Z               "line": 197
2026-06-04T12:50:05.9177400Z             },
2026-06-04T12:50:05.9178370Z             {
2026-06-04T12:50:05.9179771Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9181594Z               "line": 213
2026-06-04T12:50:05.9182714Z             },
2026-06-04T12:50:05.9183679Z             {
2026-06-04T12:50:05.9184852Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:50:05.9186432Z               "line": 227
2026-06-04T12:50:05.9188067Z             }
2026-06-04T12:50:05.9189035Z           ]
2026-06-04T12:50:05.9190465Z         }
2026-06-04T12:50:05.9191396Z       }
2026-06-04T12:50:05.9192304Z     },
2026-06-04T12:50:05.9193201Z     {
2026-06-04T12:50:05.9194144Z       "id": "REQ-EP-4",
2026-06-04T12:50:05.9195621Z       "title": "PresenceChannel broker endpoint (seam day-one)",
2026-06-04T12:50:05.9197407Z       "requiredStages": [
2026-06-04T12:50:05.9198565Z         "impl",
2026-06-04T12:50:05.9199919Z         "unit"
2026-06-04T12:50:05.9200901Z       ],
2026-06-04T12:50:05.9201838Z       "stages": {
2026-06-04T12:50:05.9202856Z         "doc": {
2026-06-04T12:50:05.9203911Z           "complete": false,
2026-06-04T12:50:05.9205138Z           "evidence": []
2026-06-04T12:50:05.9206252Z         },
2026-06-04T12:50:05.9207192Z         "impl": {
2026-06-04T12:50:05.9208254Z           "complete": true,
2026-06-04T12:50:05.9210068Z           "evidence": [
2026-06-04T12:50:05.9211155Z             {
2026-06-04T12:50:05.9212323Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:05.9213867Z               "line": 419
2026-06-04T12:50:05.9214982Z             },
2026-06-04T12:50:05.9215958Z             {
2026-06-04T12:50:05.9217113Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:05.9218658Z               "line": 631
2026-06-04T12:50:05.9219825Z             },
2026-06-04T12:50:05.9220876Z             {
2026-06-04T12:50:05.9222048Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:05.9223599Z               "line": 696
2026-06-04T12:50:05.9224731Z             },
2026-06-04T12:50:05.9225709Z             {
2026-06-04T12:50:05.9226849Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.9228387Z               "line": 83
2026-06-04T12:50:05.9229542Z             },
2026-06-04T12:50:05.9230532Z             {
2026-06-04T12:50:05.9231677Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.9233223Z               "line": 407
2026-06-04T12:50:05.9234360Z             },
2026-06-04T12:50:05.9235340Z             {
2026-06-04T12:50:05.9236480Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.9238009Z               "line": 478
2026-06-04T12:50:05.9244372Z             },
2026-06-04T12:50:05.9245437Z             {
2026-06-04T12:50:05.9246622Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.9248197Z               "line": 181
2026-06-04T12:50:05.9249394Z             },
2026-06-04T12:50:05.9250371Z             {
2026-06-04T12:50:05.9251542Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.9253105Z               "line": 306
2026-06-04T12:50:05.9254227Z             },
2026-06-04T12:50:05.9255209Z             {
2026-06-04T12:50:05.9256383Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:50:05.9257953Z               "line": 613
2026-06-04T12:50:05.9259108Z             }
2026-06-04T12:50:05.9260115Z           ]
2026-06-04T12:50:05.9261071Z         },
2026-06-04T12:50:05.9262012Z         "int": {
2026-06-04T12:50:05.9263059Z           "complete": false,
2026-06-04T12:50:05.9264288Z           "evidence": []
2026-06-04T12:50:05.9265397Z         },
2026-06-04T12:50:05.9266344Z         "unit": {
2026-06-04T12:50:05.9267391Z           "complete": true,
2026-06-04T12:50:05.9268572Z           "evidence": [
2026-06-04T12:50:05.9269696Z             {
2026-06-04T12:50:05.9270860Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:50:05.9272366Z               "line": 551
2026-06-04T12:50:05.9273495Z             },
2026-06-04T12:50:05.9274470Z             {
2026-06-04T12:50:05.9275689Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T12:50:05.9277272Z               "line": 75
2026-06-04T12:50:05.9278380Z             },
2026-06-04T12:50:05.9279385Z             {
2026-06-04T12:50:05.9280605Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T12:50:05.9282215Z               "line": 131
2026-06-04T12:50:05.9283640Z             }
2026-06-04T12:50:05.9284621Z           ]
2026-06-04T12:50:05.9285559Z         }
2026-06-04T12:50:05.9286472Z       }
2026-06-04T12:50:05.9287370Z     },
2026-06-04T12:50:05.9288274Z     {
2026-06-04T12:50:05.9289257Z       "id": "REQ-EP-5",
2026-06-04T12:50:05.9294092Z       "title": "Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope",
2026-06-04T12:50:05.9299612Z       "requiredStages": [],
2026-06-04T12:50:05.9300802Z       "stages": {
2026-06-04T12:50:05.9301825Z         "doc": {
2026-06-04T12:50:05.9302869Z           "complete": false,
2026-06-04T12:50:05.9304076Z           "evidence": []
2026-06-04T12:50:05.9305186Z         },
2026-06-04T12:50:05.9306134Z         "impl": {
2026-06-04T12:50:05.9307362Z           "complete": false,
2026-06-04T12:50:05.9308608Z           "evidence": []
2026-06-04T12:50:05.9309772Z         },
2026-06-04T12:50:05.9310709Z         "int": {
2026-06-04T12:50:05.9311752Z           "complete": false,
2026-06-04T12:50:05.9312963Z           "evidence": []
2026-06-04T12:50:05.9314075Z         },
2026-06-04T12:50:05.9315008Z         "unit": {
2026-06-04T12:50:05.9316056Z           "complete": false,
2026-06-04T12:50:05.9317290Z           "evidence": []
2026-06-04T12:50:05.9318394Z         }
2026-06-04T12:50:05.9319346Z       }
2026-06-04T12:50:05.9320346Z     },
2026-06-04T12:50:05.9321249Z     {
2026-06-04T12:50:05.9322197Z       "id": "REQ-FRONT-1",
2026-06-04T12:50:05.9323898Z       "title": "Day-one launcher/manager frontend (list/launch/attach/init)",
2026-06-04T12:50:05.9325902Z       "requiredStages": [],
2026-06-04T12:50:05.9327085Z       "stages": {
2026-06-04T12:50:05.9328097Z         "doc": {
2026-06-04T12:50:05.9329139Z           "complete": false,
2026-06-04T12:50:05.9330405Z           "evidence": []
2026-06-04T12:50:05.9331511Z         },
2026-06-04T12:50:05.9332455Z         "impl": {
2026-06-04T12:50:05.9333502Z           "complete": false,
2026-06-04T12:50:05.9334771Z           "evidence": []
2026-06-04T12:50:05.9335900Z         },
2026-06-04T12:50:05.9336829Z         "int": {
2026-06-04T12:50:05.9337877Z           "complete": false,
2026-06-04T12:50:05.9339088Z           "evidence": []
2026-06-04T12:50:05.9340249Z         },
2026-06-04T12:50:05.9341184Z         "unit": {
2026-06-04T12:50:05.9342235Z           "complete": false,
2026-06-04T12:50:05.9343436Z           "evidence": []
2026-06-04T12:50:05.9344537Z         }
2026-06-04T12:50:05.9349403Z       }
2026-06-04T12:50:05.9350360Z     },
2026-06-04T12:50:05.9350764Z     {
2026-06-04T12:50:05.9351361Z       "id": "REQ-HAZARD-CASCADE-WIPE-GUARD",
2026-06-04T12:50:05.9352303Z       "title": "No hard-delete of a parent hosting non-empty children (6.3)",
2026-06-04T12:50:05.9352776Z       "requiredStages": [
2026-06-04T12:50:05.9353230Z         "impl",
2026-06-04T12:50:05.9353640Z         "unit"
2026-06-04T12:50:05.9354058Z       ],
2026-06-04T12:50:05.9354465Z       "stages": {
2026-06-04T12:50:05.9354872Z         "doc": {
2026-06-04T12:50:05.9355322Z           "complete": false,
2026-06-04T12:50:05.9355767Z           "evidence": []
2026-06-04T12:50:05.9356164Z         },
2026-06-04T12:50:05.9356581Z         "impl": {
2026-06-04T12:50:05.9357026Z           "complete": true,
2026-06-04T12:50:05.9357466Z           "evidence": [
2026-06-04T12:50:05.9357871Z             {
2026-06-04T12:50:05.9358487Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.9358922Z               "line": 119
2026-06-04T12:50:05.9359362Z             },
2026-06-04T12:50:05.9359767Z             {
2026-06-04T12:50:05.9360347Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.9360773Z               "line": 18
2026-06-04T12:50:05.9361178Z             },
2026-06-04T12:50:05.9361571Z             {
2026-06-04T12:50:05.9362164Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.9362853Z               "line": 94
2026-06-04T12:50:05.9363261Z             }
2026-06-04T12:50:05.9363667Z           ]
2026-06-04T12:50:05.9364059Z         },
2026-06-04T12:50:05.9364467Z         "int": {
2026-06-04T12:50:05.9364912Z           "complete": false,
2026-06-04T12:50:05.9365353Z           "evidence": []
2026-06-04T12:50:05.9365749Z         },
2026-06-04T12:50:05.9366157Z         "unit": {
2026-06-04T12:50:05.9366611Z           "complete": true,
2026-06-04T12:50:05.9367035Z           "evidence": [
2026-06-04T12:50:05.9367441Z             {
2026-06-04T12:50:05.9368052Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:05.9368489Z               "line": 363
2026-06-04T12:50:05.9368882Z             },
2026-06-04T12:50:05.9369327Z             {
2026-06-04T12:50:05.9369910Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.9370338Z               "line": 152
2026-06-04T12:50:05.9370942Z             },
2026-06-04T12:50:05.9371340Z             {
2026-06-04T12:50:05.9371929Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.9372356Z               "line": 188
2026-06-04T12:50:05.9372760Z             }
2026-06-04T12:50:05.9373165Z           ]
2026-06-04T12:50:05.9373555Z         }
2026-06-04T12:50:05.9373946Z       }
2026-06-04T12:50:05.9374331Z     },
2026-06-04T12:50:05.9374726Z     {
2026-06-04T12:50:05.9375325Z       "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED",
2026-06-04T12:50:05.9378800Z       "title": "A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)",
2026-06-04T12:50:05.9379330Z       "requiredStages": [
2026-06-04T12:50:05.9379739Z         "impl",
2026-06-04T12:50:05.9380150Z         "unit"
2026-06-04T12:50:05.9380543Z       ],
2026-06-04T12:50:05.9380962Z       "stages": {
2026-06-04T12:50:05.9381372Z         "doc": {
2026-06-04T12:50:05.9381831Z           "complete": false,
2026-06-04T12:50:05.9382276Z           "evidence": []
2026-06-04T12:50:05.9382670Z         },
2026-06-04T12:50:05.9383086Z         "impl": {
2026-06-04T12:50:05.9383542Z           "complete": true,
2026-06-04T12:50:05.9383972Z           "evidence": [
2026-06-04T12:50:05.9384365Z             {
2026-06-04T12:50:05.9385010Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:50:05.9385447Z               "line": 22
2026-06-04T12:50:05.9385845Z             },
2026-06-04T12:50:05.9386249Z             {
2026-06-04T12:50:05.9386826Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:05.9387264Z               "line": 417
2026-06-04T12:50:05.9387660Z             },
2026-06-04T12:50:05.9388066Z             {
2026-06-04T12:50:05.9388682Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:50:05.9389103Z               "line": 17
2026-06-04T12:50:05.9389547Z             },
2026-06-04T12:50:05.9389952Z             {
2026-06-04T12:50:05.9390575Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:50:05.9391024Z               "line": 125
2026-06-04T12:50:05.9391430Z             },
2026-06-04T12:50:05.9391835Z             {
2026-06-04T12:50:05.9392492Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:05.9392929Z               "line": 169
2026-06-04T12:50:05.9393325Z             },
2026-06-04T12:50:05.9393726Z             {
2026-06-04T12:50:05.9394392Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:05.9394824Z               "line": 197
2026-06-04T12:50:05.9395234Z             },
2026-06-04T12:50:05.9395634Z             {
2026-06-04T12:50:05.9396295Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:05.9396728Z               "line": 223
2026-06-04T12:50:05.9397165Z             },
2026-06-04T12:50:05.9397567Z             {
2026-06-04T12:50:05.9398190Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:05.9398638Z               "line": 122
2026-06-04T12:50:05.9399248Z             },
2026-06-04T12:50:05.9399654Z             {
2026-06-04T12:50:05.9400278Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:05.9400708Z               "line": 222
2026-06-04T12:50:05.9401115Z             }
2026-06-04T12:50:05.9401509Z           ]
2026-06-04T12:50:05.9401910Z         },
2026-06-04T12:50:05.9402311Z         "int": {
2026-06-04T12:50:05.9402758Z           "complete": false,
2026-06-04T12:50:05.9403183Z           "evidence": []
2026-06-04T12:50:05.9403585Z         },
2026-06-04T12:50:05.9403996Z         "unit": {
2026-06-04T12:50:05.9404435Z           "complete": true,
2026-06-04T12:50:05.9404864Z           "evidence": [
2026-06-04T12:50:05.9405261Z             {
2026-06-04T12:50:05.9405902Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:50:05.9406323Z               "line": 53
2026-06-04T12:50:05.9406731Z             },
2026-06-04T12:50:05.9407283Z             {
2026-06-04T12:50:05.9407917Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:50:05.9408359Z               "line": 60
2026-06-04T12:50:05.9408754Z             },
2026-06-04T12:50:05.9409189Z             {
2026-06-04T12:50:05.9409816Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:50:05.9410256Z               "line": 72
2026-06-04T12:50:05.9410667Z             },
2026-06-04T12:50:05.9411059Z             {
2026-06-04T12:50:05.9411677Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:50:05.9412105Z               "line": 298
2026-06-04T12:50:05.9412505Z             },
2026-06-04T12:50:05.9412905Z             {
2026-06-04T12:50:05.9413522Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:50:05.9413953Z               "line": 247
2026-06-04T12:50:05.9414346Z             },
2026-06-04T12:50:05.9414742Z             {
2026-06-04T12:50:05.9415361Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:50:05.9415806Z               "line": 282
2026-06-04T12:50:05.9416221Z             },
2026-06-04T12:50:05.9416624Z             {
2026-06-04T12:50:05.9417244Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:50:05.9417670Z               "line": 313
2026-06-04T12:50:05.9418080Z             },
2026-06-04T12:50:05.9418473Z             {
2026-06-04T12:50:05.9419140Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:05.9419617Z               "line": 400
2026-06-04T12:50:05.9420016Z             },
2026-06-04T12:50:05.9420416Z             {
2026-06-04T12:50:05.9421046Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:05.9421496Z               "line": 383
2026-06-04T12:50:05.9421895Z             },
2026-06-04T12:50:05.9422291Z             {
2026-06-04T12:50:05.9422929Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:05.9423362Z               "line": 420
2026-06-04T12:50:05.9423778Z             }
2026-06-04T12:50:05.9424171Z           ]
2026-06-04T12:50:05.9424584Z         }
2026-06-04T12:50:05.9424975Z       }
2026-06-04T12:50:05.9425373Z     },
2026-06-04T12:50:05.9425769Z     {
2026-06-04T12:50:05.9426257Z       "id": "REQ-HAZARD-CONPTY-DSR",
2026-06-04T12:50:05.9431062Z       "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)",
2026-06-04T12:50:05.9431623Z       "requiredStages": [
2026-06-04T12:50:05.9432048Z         "impl",
2026-06-04T12:50:05.9432461Z         "unit"
2026-06-04T12:50:05.9432871Z       ],
2026-06-04T12:50:05.9433290Z       "stages": {
2026-06-04T12:50:05.9433695Z         "doc": {
2026-06-04T12:50:05.9434156Z           "complete": false,
2026-06-04T12:50:05.9434594Z           "evidence": []
2026-06-04T12:50:05.9434997Z         },
2026-06-04T12:50:05.9435400Z         "impl": {
2026-06-04T12:50:05.9435850Z           "complete": true,
2026-06-04T12:50:05.9436281Z           "evidence": [
2026-06-04T12:50:05.9436672Z             {
2026-06-04T12:50:05.9437311Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:50:05.9438001Z               "line": 164
2026-06-04T12:50:05.9438414Z             }
2026-06-04T12:50:05.9438814Z           ]
2026-06-04T12:50:05.9439337Z         },
2026-06-04T12:50:05.9439951Z         "int": {
2026-06-04T12:50:05.9440608Z           "complete": true,
2026-06-04T12:50:05.9441048Z           "evidence": [
2026-06-04T12:50:05.9441448Z             {
2026-06-04T12:50:05.9442026Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T12:50:05.9442451Z               "line": 44
2026-06-04T12:50:05.9442853Z             },
2026-06-04T12:50:05.9443254Z             {
2026-06-04T12:50:05.9443834Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T12:50:05.9444268Z               "line": 66
2026-06-04T12:50:05.9444668Z             }
2026-06-04T12:50:05.9445069Z           ]
2026-06-04T12:50:05.9445462Z         },
2026-06-04T12:50:05.9445875Z         "unit": {
2026-06-04T12:50:05.9446511Z           "complete": true,
2026-06-04T12:50:05.9446939Z           "evidence": [
2026-06-04T12:50:05.9447363Z             {
2026-06-04T12:50:05.9447941Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:50:05.9448380Z               "line": 181
2026-06-04T12:50:05.9448780Z             },
2026-06-04T12:50:05.9449234Z             {
2026-06-04T12:50:05.9449827Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:50:05.9450258Z               "line": 233
2026-06-04T12:50:05.9450672Z             },
2026-06-04T12:50:05.9451066Z             {
2026-06-04T12:50:05.9451647Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:50:05.9452079Z               "line": 261
2026-06-04T12:50:05.9452486Z             }
2026-06-04T12:50:05.9452891Z           ]
2026-06-04T12:50:05.9453285Z         }
2026-06-04T12:50:05.9453683Z       }
2026-06-04T12:50:05.9454074Z     },
2026-06-04T12:50:05.9454468Z     {
2026-06-04T12:50:05.9455056Z       "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS",
2026-06-04T12:50:05.9457644Z       "title": "Daemon-hosted perches (Psyche, spt-hosted Self) derive liveness from the daemon endpoint table + info.json status, never is_process_alive(info.pid) (2.5)",
2026-06-04T12:50:05.9458132Z       "requiredStages": [
2026-06-04T12:50:05.9458545Z         "impl",
2026-06-04T12:50:05.9458958Z         "unit",
2026-06-04T12:50:05.9459394Z         "int"
2026-06-04T12:50:05.9459804Z       ],
2026-06-04T12:50:05.9460210Z       "stages": {
2026-06-04T12:50:05.9460623Z         "doc": {
2026-06-04T12:50:05.9461088Z           "complete": false,
2026-06-04T12:50:05.9461521Z           "evidence": []
2026-06-04T12:50:05.9461926Z         },
2026-06-04T12:50:05.9462333Z         "impl": {
2026-06-04T12:50:05.9462780Z           "complete": true,
2026-06-04T12:50:05.9463209Z           "evidence": [
2026-06-04T12:50:05.9463614Z             {
2026-06-04T12:50:05.9464257Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.9464692Z               "line": 150
2026-06-04T12:50:05.9465114Z             },
2026-06-04T12:50:05.9465508Z             {
2026-06-04T12:50:05.9466161Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.9466588Z               "line": 169
2026-06-04T12:50:05.9466996Z             },
2026-06-04T12:50:05.9467394Z             {
2026-06-04T12:50:05.9467972Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:05.9468404Z               "line": 79
2026-06-04T12:50:05.9468805Z             },
2026-06-04T12:50:05.9469259Z             {
2026-06-04T12:50:05.9469825Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:05.9470278Z               "line": 51
2026-06-04T12:50:05.9470687Z             },
2026-06-04T12:50:05.9471096Z             {
2026-06-04T12:50:05.9471689Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9472123Z               "line": 126
2026-06-04T12:50:05.9472529Z             },
2026-06-04T12:50:05.9472923Z             {
2026-06-04T12:50:05.9473536Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9473991Z               "line": 27
2026-06-04T12:50:05.9474567Z             },
2026-06-04T12:50:05.9474970Z             {
2026-06-04T12:50:05.9475578Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9476010Z               "line": 79
2026-06-04T12:50:05.9476416Z             },
2026-06-04T12:50:05.9476813Z             {
2026-06-04T12:50:05.9477436Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9477873Z               "line": 102
2026-06-04T12:50:05.9478283Z             },
2026-06-04T12:50:05.9478675Z             {
2026-06-04T12:50:05.9479340Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:05.9479790Z               "line": 108
2026-06-04T12:50:05.9480189Z             }
2026-06-04T12:50:05.9480590Z           ]
2026-06-04T12:50:05.9480985Z         },
2026-06-04T12:50:05.9481397Z         "int": {
2026-06-04T12:50:05.9481841Z           "complete": true,
2026-06-04T12:50:05.9482414Z           "evidence": [
2026-06-04T12:50:05.9482826Z             {
2026-06-04T12:50:05.9483500Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:50:05.9483928Z               "line": 35
2026-06-04T12:50:05.9484321Z             }
2026-06-04T12:50:05.9484719Z           ]
2026-06-04T12:50:05.9485113Z         },
2026-06-04T12:50:05.9485526Z         "unit": {
2026-06-04T12:50:05.9485978Z           "complete": true,
2026-06-04T12:50:05.9486400Z           "evidence": [
2026-06-04T12:50:05.9486803Z             {
2026-06-04T12:50:05.9487420Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.9487860Z               "line": 544
2026-06-04T12:50:05.9488257Z             },
2026-06-04T12:50:05.9488655Z             {
2026-06-04T12:50:05.9489262Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9489698Z               "line": 286
2026-06-04T12:50:05.9490105Z             },
2026-06-04T12:50:05.9490498Z             {
2026-06-04T12:50:05.9491134Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9491584Z               "line": 124
2026-06-04T12:50:05.9491999Z             },
2026-06-04T12:50:05.9492400Z             {
2026-06-04T12:50:05.9493001Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9493438Z               "line": 136
2026-06-04T12:50:05.9493839Z             },
2026-06-04T12:50:05.9494241Z             {
2026-06-04T12:50:05.9494846Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9495287Z               "line": 146
2026-06-04T12:50:05.9495691Z             },
2026-06-04T12:50:05.9496088Z             {
2026-06-04T12:50:05.9496703Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9497132Z               "line": 159
2026-06-04T12:50:05.9497535Z             },
2026-06-04T12:50:05.9497929Z             {
2026-06-04T12:50:05.9498544Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:50:05.9498993Z               "line": 171
2026-06-04T12:50:05.9499426Z             },
2026-06-04T12:50:05.9499847Z             {
2026-06-04T12:50:05.9500459Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:05.9500898Z               "line": 207
2026-06-04T12:50:05.9501288Z             }
2026-06-04T12:50:05.9501691Z           ]
2026-06-04T12:50:05.9502093Z         }
2026-06-04T12:50:05.9502483Z       }
2026-06-04T12:50:05.9502872Z     },
2026-06-04T12:50:05.9503257Z     {
2026-06-04T12:50:05.9503863Z       "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING",
2026-06-04T12:50:05.9507922Z       "title": "Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)",
2026-06-04T12:50:05.9508422Z       "requiredStages": [],
2026-06-04T12:50:05.9508844Z       "stages": {
2026-06-04T12:50:05.9509287Z         "doc": {
2026-06-04T12:50:05.9509785Z           "complete": false,
2026-06-04T12:50:05.9510215Z           "evidence": []
2026-06-04T12:50:05.9510806Z         },
2026-06-04T12:50:05.9514642Z         "impl": {
2026-06-04T12:50:05.9515233Z           "complete": false,
2026-06-04T12:50:05.9515681Z           "evidence": []
2026-06-04T12:50:05.9516084Z         },
2026-06-04T12:50:05.9516499Z         "int": {
2026-06-04T12:50:05.9516947Z           "complete": false,
2026-06-04T12:50:05.9517392Z           "evidence": []
2026-06-04T12:50:05.9517807Z         },
2026-06-04T12:50:05.9518213Z         "unit": {
2026-06-04T12:50:05.9518665Z           "complete": false,
2026-06-04T12:50:05.9519102Z           "evidence": []
2026-06-04T12:50:05.9519605Z         }
2026-06-04T12:50:05.9520001Z       }
2026-06-04T12:50:05.9520399Z     },
2026-06-04T12:50:05.9520799Z     {
2026-06-04T12:50:05.9521308Z       "id": "REQ-HAZARD-DEFERRED-DRAIN",
2026-06-04T12:50:05.9522335Z       "title": "Deferred spool rows excluded from the event-stream drain (1.4)",
2026-06-04T12:50:05.9523142Z       "requiredStages": [
2026-06-04T12:50:05.9523566Z         "impl",
2026-06-04T12:50:05.9523996Z         "unit"
2026-06-04T12:50:05.9524397Z       ],
2026-06-04T12:50:05.9524814Z       "stages": {
2026-06-04T12:50:05.9525217Z         "doc": {
2026-06-04T12:50:05.9525673Z           "complete": false,
2026-06-04T12:50:05.9526108Z           "evidence": []
2026-06-04T12:50:05.9526513Z         },
2026-06-04T12:50:05.9526922Z         "impl": {
2026-06-04T12:50:05.9527380Z           "complete": true,
2026-06-04T12:50:05.9527824Z           "evidence": [
2026-06-04T12:50:05.9528225Z             {
2026-06-04T12:50:05.9528816Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9529286Z               "line": 40
2026-06-04T12:50:05.9529700Z             },
2026-06-04T12:50:05.9530097Z             {
2026-06-04T12:50:05.9530686Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9531125Z               "line": 98
2026-06-04T12:50:05.9531522Z             },
2026-06-04T12:50:05.9531936Z             {
2026-06-04T12:50:05.9532510Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9532972Z               "line": 209
2026-06-04T12:50:05.9533375Z             },
2026-06-04T12:50:05.9533783Z             {
2026-06-04T12:50:05.9534368Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9534791Z               "line": 291
2026-06-04T12:50:05.9535194Z             }
2026-06-04T12:50:05.9535585Z           ]
2026-06-04T12:50:05.9535987Z         },
2026-06-04T12:50:05.9536388Z         "int": {
2026-06-04T12:50:05.9536840Z           "complete": false,
2026-06-04T12:50:05.9537280Z           "evidence": []
2026-06-04T12:50:05.9537678Z         },
2026-06-04T12:50:05.9538087Z         "unit": {
2026-06-04T12:50:05.9538532Z           "complete": true,
2026-06-04T12:50:05.9538963Z           "evidence": [
2026-06-04T12:50:05.9539400Z             {
2026-06-04T12:50:05.9539989Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9540446Z               "line": 326
2026-06-04T12:50:05.9540843Z             },
2026-06-04T12:50:05.9541259Z             {
2026-06-04T12:50:05.9541848Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9542298Z               "line": 372
2026-06-04T12:50:05.9542711Z             },
2026-06-04T12:50:05.9543132Z             {
2026-06-04T12:50:05.9543727Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9544174Z               "line": 413
2026-06-04T12:50:05.9544592Z             },
2026-06-04T12:50:05.9545004Z             {
2026-06-04T12:50:05.9545600Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9546044Z               "line": 432
2026-06-04T12:50:05.9546464Z             }
2026-06-04T12:50:05.9546883Z           ]
2026-06-04T12:50:05.9547287Z         }
2026-06-04T12:50:05.9547705Z       }
2026-06-04T12:50:05.9548108Z     },
2026-06-04T12:50:05.9548517Z     {
2026-06-04T12:50:05.9549108Z       "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN",
2026-06-04T12:50:05.9549824Z       "title": "Deferred rows survive poll drain (4.4)",
2026-06-04T12:50:05.9550495Z       "requiredStages": [
2026-06-04T12:50:05.9550902Z         "impl",
2026-06-04T12:50:05.9551307Z         "unit"
2026-06-04T12:50:05.9551709Z       ],
2026-06-04T12:50:05.9552127Z       "stages": {
2026-06-04T12:50:05.9552528Z         "doc": {
2026-06-04T12:50:05.9552996Z           "complete": false,
2026-06-04T12:50:05.9553439Z           "evidence": []
2026-06-04T12:50:05.9553841Z         },
2026-06-04T12:50:05.9554252Z         "impl": {
2026-06-04T12:50:05.9554702Z           "complete": true,
2026-06-04T12:50:05.9555134Z           "evidence": [
2026-06-04T12:50:05.9555526Z             {
2026-06-04T12:50:05.9556125Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9556588Z               "line": 111
2026-06-04T12:50:05.9557001Z             },
2026-06-04T12:50:05.9557414Z             {
2026-06-04T12:50:05.9558005Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9558614Z               "line": 202
2026-06-04T12:50:05.9559040Z             }
2026-06-04T12:50:05.9559517Z           ]
2026-06-04T12:50:05.9559936Z         },
2026-06-04T12:50:05.9560356Z         "int": {
2026-06-04T12:50:05.9560812Z           "complete": false,
2026-06-04T12:50:05.9561250Z           "evidence": []
2026-06-04T12:50:05.9561655Z         },
2026-06-04T12:50:05.9562059Z         "unit": {
2026-06-04T12:50:05.9562515Z           "complete": true,
2026-06-04T12:50:05.9562953Z           "evidence": [
2026-06-04T12:50:05.9563360Z             {
2026-06-04T12:50:05.9563953Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9564397Z               "line": 347
2026-06-04T12:50:05.9564817Z             },
2026-06-04T12:50:05.9565225Z             {
2026-06-04T12:50:05.9565820Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:05.9566270Z               "line": 391
2026-06-04T12:50:05.9566680Z             }
2026-06-04T12:50:05.9567109Z           ]
2026-06-04T12:50:05.9567513Z         }
2026-06-04T12:50:05.9567934Z       }
2026-06-04T12:50:05.9568353Z     },
2026-06-04T12:50:05.9568759Z     {
2026-06-04T12:50:05.9569417Z       "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE",
2026-06-04T12:50:05.9570626Z       "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)",
2026-06-04T12:50:05.9571103Z       "requiredStages": [
2026-06-04T12:50:05.9571524Z         "impl",
2026-06-04T12:50:05.9571951Z         "unit"
2026-06-04T12:50:05.9572364Z       ],
2026-06-04T12:50:05.9572793Z       "stages": {
2026-06-04T12:50:05.9573220Z         "doc": {
2026-06-04T12:50:05.9573689Z           "complete": false,
2026-06-04T12:50:05.9574147Z           "evidence": []
2026-06-04T12:50:05.9574556Z         },
2026-06-04T12:50:05.9574992Z         "impl": {
2026-06-04T12:50:05.9575431Z           "complete": true,
2026-06-04T12:50:05.9575869Z           "evidence": [
2026-06-04T12:50:05.9576277Z             {
2026-06-04T12:50:05.9576876Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9577330Z               "line": 26
2026-06-04T12:50:05.9577760Z             },
2026-06-04T12:50:05.9578180Z             {
2026-06-04T12:50:05.9578777Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9579267Z               "line": 126
2026-06-04T12:50:05.9579689Z             },
2026-06-04T12:50:05.9580093Z             {
2026-06-04T12:50:05.9580753Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:50:05.9581194Z               "line": 26
2026-06-04T12:50:05.9581615Z             },
2026-06-04T12:50:05.9582023Z             {
2026-06-04T12:50:05.9582684Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:50:05.9583134Z               "line": 233
2026-06-04T12:50:05.9583541Z             }
2026-06-04T12:50:05.9583956Z           ]
2026-06-04T12:50:05.9584369Z         },
2026-06-04T12:50:05.9584796Z         "int": {
2026-06-04T12:50:05.9585255Z           "complete": false,
2026-06-04T12:50:05.9585721Z           "evidence": []
2026-06-04T12:50:05.9586137Z         },
2026-06-04T12:50:05.9586798Z         "unit": {
2026-06-04T12:50:05.9587309Z           "complete": true,
2026-06-04T12:50:05.9587759Z           "evidence": [
2026-06-04T12:50:05.9588180Z             {
2026-06-04T12:50:05.9588781Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9589278Z               "line": 152
2026-06-04T12:50:05.9589700Z             },
2026-06-04T12:50:05.9593589Z             {
2026-06-04T12:50:05.9594291Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9594729Z               "line": 161
2026-06-04T12:50:05.9595145Z             },
2026-06-04T12:50:05.9595549Z             {
2026-06-04T12:50:05.9596140Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9596576Z               "line": 170
2026-06-04T12:50:05.9596976Z             },
2026-06-04T12:50:05.9597373Z             {
2026-06-04T12:50:05.9597957Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9598722Z               "line": 179
2026-06-04T12:50:05.9599257Z             },
2026-06-04T12:50:05.9599683Z             {
2026-06-04T12:50:05.9600393Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9600837Z               "line": 188
2026-06-04T12:50:05.9601260Z             },
2026-06-04T12:50:05.9601670Z             {
2026-06-04T12:50:05.9602268Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9602717Z               "line": 199
2026-06-04T12:50:05.9603136Z             },
2026-06-04T12:50:05.9603553Z             {
2026-06-04T12:50:05.9604137Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:50:05.9604576Z               "line": 225
2026-06-04T12:50:05.9604974Z             },
2026-06-04T12:50:05.9605374Z             {
2026-06-04T12:50:05.9605957Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:05.9606396Z               "line": 245
2026-06-04T12:50:05.9606837Z             },
2026-06-04T12:50:05.9607250Z             {
2026-06-04T12:50:05.9607856Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:05.9608321Z               "line": 212
2026-06-04T12:50:05.9608737Z             },
2026-06-04T12:50:05.9609153Z             {
2026-06-04T12:50:05.9609848Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:50:05.9610301Z               "line": 256
2026-06-04T12:50:05.9610715Z             },
2026-06-04T12:50:05.9611130Z             {
2026-06-04T12:50:05.9611776Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:50:05.9612234Z               "line": 281
2026-06-04T12:50:05.9612657Z             },
2026-06-04T12:50:05.9613068Z             {
2026-06-04T12:50:05.9613722Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:50:05.9614160Z               "line": 293
2026-06-04T12:50:05.9614582Z             },
2026-06-04T12:50:05.9614988Z             {
2026-06-04T12:50:05.9615648Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:50:05.9616108Z               "line": 303
2026-06-04T12:50:05.9616540Z             },
2026-06-04T12:50:05.9616956Z             {
2026-06-04T12:50:05.9617576Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:05.9618014Z               "line": 502
2026-06-04T12:50:05.9618415Z             }
2026-06-04T12:50:05.9618819Z           ]
2026-06-04T12:50:05.9619257Z         }
2026-06-04T12:50:05.9619657Z       }
2026-06-04T12:50:05.9620055Z     },
2026-06-04T12:50:05.9620445Z     {
2026-06-04T12:50:05.9621062Z       "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER",
2026-06-04T12:50:05.9621841Z       "title": "Drop files are daemon-owned single-writer (6.4)",
2026-06-04T12:50:05.9622321Z       "requiredStages": [
2026-06-04T12:50:05.9622749Z         "impl",
2026-06-04T12:50:05.9623168Z         "unit"
2026-06-04T12:50:05.9623588Z       ],
2026-06-04T12:50:05.9624009Z       "stages": {
2026-06-04T12:50:05.9624436Z         "doc": {
2026-06-04T12:50:05.9624906Z           "complete": false,
2026-06-04T12:50:05.9625364Z           "evidence": []
2026-06-04T12:50:05.9625967Z         },
2026-06-04T12:50:05.9626398Z         "impl": {
2026-06-04T12:50:05.9626877Z           "complete": true,
2026-06-04T12:50:05.9627322Z           "evidence": [
2026-06-04T12:50:05.9627728Z             {
2026-06-04T12:50:05.9628299Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:50:05.9628749Z               "line": 25
2026-06-04T12:50:05.9629213Z             },
2026-06-04T12:50:05.9629628Z             {
2026-06-04T12:50:05.9630222Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:05.9630665Z               "line": 26
2026-06-04T12:50:05.9631085Z             },
2026-06-04T12:50:05.9631502Z             {
2026-06-04T12:50:05.9632084Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:05.9632535Z               "line": 153
2026-06-04T12:50:05.9632949Z             }
2026-06-04T12:50:05.9633378Z           ]
2026-06-04T12:50:05.9633946Z         },
2026-06-04T12:50:05.9634389Z         "int": {
2026-06-04T12:50:05.9634871Z           "complete": false,
2026-06-04T12:50:05.9635319Z           "evidence": []
2026-06-04T12:50:05.9635716Z         },
2026-06-04T12:50:05.9636119Z         "unit": {
2026-06-04T12:50:05.9636565Z           "complete": true,
2026-06-04T12:50:05.9636991Z           "evidence": [
2026-06-04T12:50:05.9637395Z             {
2026-06-04T12:50:05.9637954Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:50:05.9638393Z               "line": 180
2026-06-04T12:50:05.9638802Z             },
2026-06-04T12:50:05.9639238Z             {
2026-06-04T12:50:05.9639802Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:50:05.9640238Z               "line": 205
2026-06-04T12:50:05.9640640Z             },
2026-06-04T12:50:05.9641042Z             {
2026-06-04T12:50:05.9641628Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:05.9642078Z               "line": 180
2026-06-04T12:50:05.9642508Z             }
2026-06-04T12:50:05.9642927Z           ]
2026-06-04T12:50:05.9643347Z         }
2026-06-04T12:50:05.9643764Z       }
2026-06-04T12:50:05.9644174Z     },
2026-06-04T12:50:05.9644580Z     {
2026-06-04T12:50:05.9645088Z       "id": "REQ-HAZARD-EBUSY-RENAME",
2026-06-04T12:50:05.9645979Z       "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)",
2026-06-04T12:50:05.9646451Z       "requiredStages": [
2026-06-04T12:50:05.9646864Z         "impl",
2026-06-04T12:50:05.9647287Z         "unit"
2026-06-04T12:50:05.9647703Z       ],
2026-06-04T12:50:05.9648126Z       "stages": {
2026-06-04T12:50:05.9648544Z         "doc": {
2026-06-04T12:50:05.9649008Z           "complete": false,
2026-06-04T12:50:05.9649489Z           "evidence": []
2026-06-04T12:50:05.9649899Z         },
2026-06-04T12:50:05.9650326Z         "impl": {
2026-06-04T12:50:05.9650787Z           "complete": true,
2026-06-04T12:50:05.9651225Z           "evidence": [
2026-06-04T12:50:05.9651643Z             {
2026-06-04T12:50:05.9652246Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9652702Z               "line": 48
2026-06-04T12:50:05.9653113Z             },
2026-06-04T12:50:05.9653534Z             {
2026-06-04T12:50:05.9654144Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9654577Z               "line": 55
2026-06-04T12:50:05.9654997Z             },
2026-06-04T12:50:05.9655408Z             {
2026-06-04T12:50:05.9656008Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9656443Z               "line": 74
2026-06-04T12:50:05.9656864Z             },
2026-06-04T12:50:05.9657263Z             {
2026-06-04T12:50:05.9657859Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9658298Z               "line": 91
2026-06-04T12:50:05.9658709Z             }
2026-06-04T12:50:05.9659125Z           ]
2026-06-04T12:50:05.9659571Z         },
2026-06-04T12:50:05.9660002Z         "int": {
2026-06-04T12:50:05.9660468Z           "complete": false,
2026-06-04T12:50:05.9660923Z           "evidence": []
2026-06-04T12:50:05.9661580Z         },
2026-06-04T12:50:05.9662002Z         "unit": {
2026-06-04T12:50:05.9662455Z           "complete": true,
2026-06-04T12:50:05.9662885Z           "evidence": [
2026-06-04T12:50:05.9663289Z             {
2026-06-04T12:50:05.9663896Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9664341Z               "line": 149
2026-06-04T12:50:05.9664758Z             },
2026-06-04T12:50:05.9665169Z             {
2026-06-04T12:50:05.9665763Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9666210Z               "line": 163
2026-06-04T12:50:05.9666627Z             },
2026-06-04T12:50:05.9667041Z             {
2026-06-04T12:50:05.9667636Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9668082Z               "line": 173
2026-06-04T12:50:05.9668495Z             },
2026-06-04T12:50:05.9668906Z             {
2026-06-04T12:50:05.9669537Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9673410Z               "line": 191
2026-06-04T12:50:05.9673949Z             },
2026-06-04T12:50:05.9674352Z             {
2026-06-04T12:50:05.9674962Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:05.9675393Z               "line": 204
2026-06-04T12:50:05.9675795Z             }
2026-06-04T12:50:05.9676198Z           ]
2026-06-04T12:50:05.9676609Z         }
2026-06-04T12:50:05.9677010Z       }
2026-06-04T12:50:05.9677399Z     },
2026-06-04T12:50:05.9677789Z     {
2026-06-04T12:50:05.9678364Z       "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF",
2026-06-04T12:50:05.9679473Z       "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)",
2026-06-04T12:50:05.9679939Z       "requiredStages": [
2026-06-04T12:50:05.9680357Z         "impl",
2026-06-04T12:50:05.9680771Z         "unit"
2026-06-04T12:50:05.9681166Z       ],
2026-06-04T12:50:05.9681580Z       "stages": {
2026-06-04T12:50:05.9681976Z         "doc": {
2026-06-04T12:50:05.9682447Z           "complete": false,
2026-06-04T12:50:05.9682887Z           "evidence": []
2026-06-04T12:50:05.9683297Z         },
2026-06-04T12:50:05.9683715Z         "impl": {
2026-06-04T12:50:05.9684158Z           "complete": true,
2026-06-04T12:50:05.9684583Z           "evidence": [
2026-06-04T12:50:05.9684979Z             {
2026-06-04T12:50:05.9685620Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.9686048Z               "line": 341
2026-06-04T12:50:05.9686449Z             },
2026-06-04T12:50:05.9686851Z             {
2026-06-04T12:50:05.9687429Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:05.9687857Z               "line": 26
2026-06-04T12:50:05.9688253Z             }
2026-06-04T12:50:05.9688653Z           ]
2026-06-04T12:50:05.9689049Z         },
2026-06-04T12:50:05.9689496Z         "int": {
2026-06-04T12:50:05.9689954Z           "complete": false,
2026-06-04T12:50:05.9690377Z           "evidence": []
2026-06-04T12:50:05.9690785Z         },
2026-06-04T12:50:05.9691188Z         "unit": {
2026-06-04T12:50:05.9691655Z           "complete": true,
2026-06-04T12:50:05.9692078Z           "evidence": [
2026-06-04T12:50:05.9692480Z             {
2026-06-04T12:50:05.9693080Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:05.9693501Z               "line": 139
2026-06-04T12:50:05.9693903Z             },
2026-06-04T12:50:05.9694294Z             {
2026-06-04T12:50:05.9694876Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:05.9695303Z               "line": 182
2026-06-04T12:50:05.9695708Z             }
2026-06-04T12:50:05.9696114Z           ]
2026-06-04T12:50:05.9696508Z         }
2026-06-04T12:50:05.9696900Z       }
2026-06-04T12:50:05.9697285Z     },
2026-06-04T12:50:05.9697673Z     {
2026-06-04T12:50:05.9698257Z       "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER",
2026-06-04T12:50:05.9699085Z       "title": "Envelope decode order, ampersand decoded last (4.1)",
2026-06-04T12:50:05.9699597Z       "requiredStages": [
2026-06-04T12:50:05.9700001Z         "impl",
2026-06-04T12:50:05.9700700Z         "unit"
2026-06-04T12:50:05.9701102Z       ],
2026-06-04T12:50:05.9701522Z       "stages": {
2026-06-04T12:50:05.9701926Z         "doc": {
2026-06-04T12:50:05.9702385Z           "complete": false,
2026-06-04T12:50:05.9702821Z           "evidence": []
2026-06-04T12:50:05.9703216Z         },
2026-06-04T12:50:05.9703630Z         "impl": {
2026-06-04T12:50:05.9704072Z           "complete": true,
2026-06-04T12:50:05.9704507Z           "evidence": [
2026-06-04T12:50:05.9704899Z             {
2026-06-04T12:50:05.9705533Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9705967Z               "line": 36
2026-06-04T12:50:05.9706363Z             },
2026-06-04T12:50:05.9706771Z             {
2026-06-04T12:50:05.9707383Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9707810Z               "line": 68
2026-06-04T12:50:05.9708206Z             }
2026-06-04T12:50:05.9708764Z           ]
2026-06-04T12:50:05.9709210Z         },
2026-06-04T12:50:05.9709631Z         "int": {
2026-06-04T12:50:05.9710084Z           "complete": false,
2026-06-04T12:50:05.9710517Z           "evidence": []
2026-06-04T12:50:05.9710921Z         },
2026-06-04T12:50:05.9711329Z         "unit": {
2026-06-04T12:50:05.9711786Z           "complete": true,
2026-06-04T12:50:05.9712221Z           "evidence": [
2026-06-04T12:50:05.9712614Z             {
2026-06-04T12:50:05.9713243Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9713670Z               "line": 143
2026-06-04T12:50:05.9714075Z             },
2026-06-04T12:50:05.9714466Z             {
2026-06-04T12:50:05.9715087Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9715521Z               "line": 160
2026-06-04T12:50:05.9715921Z             },
2026-06-04T12:50:05.9716321Z             {
2026-06-04T12:50:05.9716934Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9717390Z               "line": 168
2026-06-04T12:50:05.9717787Z             }
2026-06-04T12:50:05.9718201Z           ]
2026-06-04T12:50:05.9718595Z         }
2026-06-04T12:50:05.9718986Z       }
2026-06-04T12:50:05.9719417Z     },
2026-06-04T12:50:05.9719808Z     {
2026-06-04T12:50:05.9720410Z       "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE",
2026-06-04T12:50:05.9721397Z       "title": "Two-slice envelope parser is panic-free and tolerant (4.2)",
2026-06-04T12:50:05.9721860Z       "requiredStages": [
2026-06-04T12:50:05.9722273Z         "impl",
2026-06-04T12:50:05.9722672Z         "unit"
2026-06-04T12:50:05.9723075Z       ],
2026-06-04T12:50:05.9723484Z       "stages": {
2026-06-04T12:50:05.9723885Z         "doc": {
2026-06-04T12:50:05.9724329Z           "complete": false,
2026-06-04T12:50:05.9724766Z           "evidence": []
2026-06-04T12:50:05.9725165Z         },
2026-06-04T12:50:05.9725566Z         "impl": {
2026-06-04T12:50:05.9726011Z           "complete": true,
2026-06-04T12:50:05.9726436Z           "evidence": [
2026-06-04T12:50:05.9726854Z             {
2026-06-04T12:50:05.9727474Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9727917Z               "line": 107
2026-06-04T12:50:05.9728320Z             }
2026-06-04T12:50:05.9728712Z           ]
2026-06-04T12:50:05.9729115Z         },
2026-06-04T12:50:05.9729548Z         "int": {
2026-06-04T12:50:05.9730108Z           "complete": false,
2026-06-04T12:50:05.9730536Z           "evidence": []
2026-06-04T12:50:05.9730942Z         },
2026-06-04T12:50:05.9731356Z         "unit": {
2026-06-04T12:50:05.9731799Z           "complete": true,
2026-06-04T12:50:05.9732234Z           "evidence": [
2026-06-04T12:50:05.9732630Z             {
2026-06-04T12:50:05.9733258Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9733687Z               "line": 184
2026-06-04T12:50:05.9734093Z             },
2026-06-04T12:50:05.9734490Z             {
2026-06-04T12:50:05.9735098Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9735545Z               "line": 193
2026-06-04T12:50:05.9736101Z             },
2026-06-04T12:50:05.9736500Z             {
2026-06-04T12:50:05.9737113Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9737552Z               "line": 201
2026-06-04T12:50:05.9737958Z             },
2026-06-04T12:50:05.9738347Z             {
2026-06-04T12:50:05.9738960Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9739421Z               "line": 210
2026-06-04T12:50:05.9739836Z             },
2026-06-04T12:50:05.9740235Z             {
2026-06-04T12:50:05.9740865Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:50:05.9741298Z               "line": 219
2026-06-04T12:50:05.9741689Z             }
2026-06-04T12:50:05.9742090Z           ]
2026-06-04T12:50:05.9742481Z         }
2026-06-04T12:50:05.9742875Z       }
2026-06-04T12:50:05.9743257Z     },
2026-06-04T12:50:05.9743653Z     {
2026-06-04T12:50:05.9744194Z       "id": "REQ-HAZARD-EPHEMERAL-CLEANUP",
2026-06-04T12:50:05.9745199Z       "title": "Ephemeral perch cleanup on every ring exit path (3.1)",
2026-06-04T12:50:05.9745686Z       "requiredStages": [
2026-06-04T12:50:05.9746096Z         "impl",
2026-06-04T12:50:05.9746503Z         "unit"
2026-06-04T12:50:05.9746901Z       ],
2026-06-04T12:50:05.9747308Z       "stages": {
2026-06-04T12:50:05.9750989Z         "doc": {
2026-06-04T12:50:05.9751559Z           "complete": false,
2026-06-04T12:50:05.9752013Z           "evidence": []
2026-06-04T12:50:05.9752413Z         },
2026-06-04T12:50:05.9752829Z         "impl": {
2026-06-04T12:50:05.9753268Z           "complete": true,
2026-06-04T12:50:05.9753704Z           "evidence": [
2026-06-04T12:50:05.9754106Z             {
2026-06-04T12:50:05.9754661Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:05.9755089Z               "line": 14
2026-06-04T12:50:05.9755485Z             },
2026-06-04T12:50:05.9755887Z             {
2026-06-04T12:50:05.9756435Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:05.9756903Z               "line": 62
2026-06-04T12:50:05.9757324Z             }
2026-06-04T12:50:05.9757715Z           ]
2026-06-04T12:50:05.9758117Z         },
2026-06-04T12:50:05.9758514Z         "int": {
2026-06-04T12:50:05.9758966Z           "complete": false,
2026-06-04T12:50:05.9759450Z           "evidence": []
2026-06-04T12:50:05.9759856Z         },
2026-06-04T12:50:05.9760258Z         "unit": {
2026-06-04T12:50:05.9760697Z           "complete": true,
2026-06-04T12:50:05.9761123Z           "evidence": [
2026-06-04T12:50:05.9761513Z             {
2026-06-04T12:50:05.9762065Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:05.9762496Z               "line": 160
2026-06-04T12:50:05.9762901Z             },
2026-06-04T12:50:05.9763300Z             {
2026-06-04T12:50:05.9763845Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:05.9764276Z               "line": 197
2026-06-04T12:50:05.9764676Z             },
2026-06-04T12:50:05.9765087Z             {
2026-06-04T12:50:05.9765638Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:05.9766073Z               "line": 213
2026-06-04T12:50:05.9766478Z             }
2026-06-04T12:50:05.9766873Z           ]
2026-06-04T12:50:05.9767270Z         }
2026-06-04T12:50:05.9767657Z       }
2026-06-04T12:50:05.9768052Z     },
2026-06-04T12:50:05.9768439Z     {
2026-06-04T12:50:05.9769026Z       "id": "REQ-HAZARD-EVENTPART-REASSEMBLY",
2026-06-04T12:50:05.9770252Z       "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently",
2026-06-04T12:50:05.9770713Z       "requiredStages": [
2026-06-04T12:50:05.9771122Z         "impl",
2026-06-04T12:50:05.9771520Z         "unit"
2026-06-04T12:50:05.9771918Z       ],
2026-06-04T12:50:05.9772331Z       "stages": {
2026-06-04T12:50:05.9772728Z         "doc": {
2026-06-04T12:50:05.9773179Z           "complete": false,
2026-06-04T12:50:05.9773611Z           "evidence": []
2026-06-04T12:50:05.9774014Z         },
2026-06-04T12:50:05.9774426Z         "impl": {
2026-06-04T12:50:05.9774877Z           "complete": true,
2026-06-04T12:50:05.9775575Z           "evidence": [
2026-06-04T12:50:05.9775974Z             {
2026-06-04T12:50:05.9776573Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9776998Z               "line": 76
2026-06-04T12:50:05.9777394Z             },
2026-06-04T12:50:05.9777790Z             {
2026-06-04T12:50:05.9778378Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9778816Z               "line": 163
2026-06-04T12:50:05.9779249Z             },
2026-06-04T12:50:05.9779655Z             {
2026-06-04T12:50:05.9780227Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9780660Z               "line": 229
2026-06-04T12:50:05.9781055Z             },
2026-06-04T12:50:05.9781462Z             {
2026-06-04T12:50:05.9782040Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9782468Z               "line": 265
2026-06-04T12:50:05.9783028Z             }
2026-06-04T12:50:05.9783422Z           ]
2026-06-04T12:50:05.9783835Z         },
2026-06-04T12:50:05.9784235Z         "int": {
2026-06-04T12:50:05.9784690Z           "complete": false,
2026-06-04T12:50:05.9785125Z           "evidence": []
2026-06-04T12:50:05.9785519Z         },
2026-06-04T12:50:05.9785928Z         "unit": {
2026-06-04T12:50:05.9786369Z           "complete": true,
2026-06-04T12:50:05.9786796Z           "evidence": [
2026-06-04T12:50:05.9787186Z             {
2026-06-04T12:50:05.9787766Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9788200Z               "line": 310
2026-06-04T12:50:05.9788594Z             },
2026-06-04T12:50:05.9788999Z             {
2026-06-04T12:50:05.9789623Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9790065Z               "line": 318
2026-06-04T12:50:05.9790463Z             },
2026-06-04T12:50:05.9790858Z             {
2026-06-04T12:50:05.9791437Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9791878Z               "line": 341
2026-06-04T12:50:05.9792297Z             },
2026-06-04T12:50:05.9792688Z             {
2026-06-04T12:50:05.9793264Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9793689Z               "line": 378
2026-06-04T12:50:05.9794095Z             },
2026-06-04T12:50:05.9794490Z             {
2026-06-04T12:50:05.9795062Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9795496Z               "line": 389
2026-06-04T12:50:05.9795887Z             },
2026-06-04T12:50:05.9796283Z             {
2026-06-04T12:50:05.9796850Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9797291Z               "line": 401
2026-06-04T12:50:05.9797697Z             },
2026-06-04T12:50:05.9798085Z             {
2026-06-04T12:50:05.9798657Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:50:05.9799086Z               "line": 413
2026-06-04T12:50:05.9799546Z             }
2026-06-04T12:50:05.9799995Z           ]
2026-06-04T12:50:05.9800429Z         }
2026-06-04T12:50:05.9800842Z       }
2026-06-04T12:50:05.9801227Z     },
2026-06-04T12:50:05.9801616Z     {
2026-06-04T12:50:05.9802115Z       "id": "REQ-HAZARD-GEN-START-NOW",
2026-06-04T12:50:05.9802880Z       "title": "gen_start = now() on cold-start and handoff (2.4)",
2026-06-04T12:50:05.9803330Z       "requiredStages": [
2026-06-04T12:50:05.9803744Z         "impl",
2026-06-04T12:50:05.9804152Z         "int"
2026-06-04T12:50:05.9804546Z       ],
2026-06-04T12:50:05.9804961Z       "stages": {
2026-06-04T12:50:05.9805364Z         "doc": {
2026-06-04T12:50:05.9805821Z           "complete": false,
2026-06-04T12:50:05.9806252Z           "evidence": []
2026-06-04T12:50:05.9806655Z         },
2026-06-04T12:50:05.9807069Z         "impl": {
2026-06-04T12:50:05.9807508Z           "complete": true,
2026-06-04T12:50:05.9807939Z           "evidence": [
2026-06-04T12:50:05.9808335Z             {
2026-06-04T12:50:05.9808934Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:05.9809418Z               "line": 22
2026-06-04T12:50:05.9810056Z             }
2026-06-04T12:50:05.9810458Z           ]
2026-06-04T12:50:05.9810849Z         },
2026-06-04T12:50:05.9811260Z         "int": {
2026-06-04T12:50:05.9811705Z           "complete": true,
2026-06-04T12:50:05.9812134Z           "evidence": [
2026-06-04T12:50:05.9812528Z             {
2026-06-04T12:50:05.9813157Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T12:50:05.9813585Z               "line": 18
2026-06-04T12:50:05.9813979Z             }
2026-06-04T12:50:05.9814380Z           ]
2026-06-04T12:50:05.9814768Z         },
2026-06-04T12:50:05.9815181Z         "unit": {
2026-06-04T12:50:05.9815626Z           "complete": false,
2026-06-04T12:50:05.9816058Z           "evidence": []
2026-06-04T12:50:05.9816459Z         }
2026-06-04T12:50:05.9816844Z       }
2026-06-04T12:50:05.9817244Z     },
2026-06-04T12:50:05.9817629Z     {
2026-06-04T12:50:05.9818363Z       "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF",
2026-06-04T12:50:05.9819449Z       "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)",
2026-06-04T12:50:05.9819942Z       "requiredStages": [
2026-06-04T12:50:05.9820355Z         "impl",
2026-06-04T12:50:05.9820753Z         "unit"
2026-06-04T12:50:05.9821152Z       ],
2026-06-04T12:50:05.9821568Z       "stages": {
2026-06-04T12:50:05.9821977Z         "doc": {
2026-06-04T12:50:05.9822422Z           "complete": false,
2026-06-04T12:50:05.9822862Z           "evidence": []
2026-06-04T12:50:05.9823263Z         },
2026-06-04T12:50:05.9823664Z         "impl": {
2026-06-04T12:50:05.9824111Z           "complete": true,
2026-06-04T12:50:05.9824532Z           "evidence": [
2026-06-04T12:50:05.9828210Z             {
2026-06-04T12:50:05.9828936Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.9829474Z               "line": 340
2026-06-04T12:50:05.9829895Z             },
2026-06-04T12:50:05.9830290Z             {
2026-06-04T12:50:05.9831009Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:05.9831454Z               "line": 27
2026-06-04T12:50:05.9831861Z             }
2026-06-04T12:50:05.9832262Z           ]
2026-06-04T12:50:05.9832665Z         },
2026-06-04T12:50:05.9833074Z         "int": {
2026-06-04T12:50:05.9833513Z           "complete": false,
2026-06-04T12:50:05.9833944Z           "evidence": []
2026-06-04T12:50:05.9834336Z         },
2026-06-04T12:50:05.9834755Z         "unit": {
2026-06-04T12:50:05.9835200Z           "complete": true,
2026-06-04T12:50:05.9835627Z           "evidence": [
2026-06-04T12:50:05.9836022Z             {
2026-06-04T12:50:05.9836647Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:05.9837078Z               "line": 745
2026-06-04T12:50:05.9837474Z             },
2026-06-04T12:50:05.9837871Z             {
2026-06-04T12:50:05.9838452Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:05.9838895Z               "line": 164
2026-06-04T12:50:05.9839356Z             }
2026-06-04T12:50:05.9839753Z           ]
2026-06-04T12:50:05.9840245Z         }
2026-06-04T12:50:05.9840631Z       }
2026-06-04T12:50:05.9841025Z     },
2026-06-04T12:50:05.9841410Z     {
2026-06-04T12:50:05.9841988Z       "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT",
2026-06-04T12:50:05.9842911Z       "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)",
2026-06-04T12:50:05.9843916Z       "requiredStages": [
2026-06-04T12:50:05.9844468Z         "impl",
2026-06-04T12:50:05.9845113Z         "unit"
2026-06-04T12:50:05.9845567Z       ],
2026-06-04T12:50:05.9846064Z       "stages": {
2026-06-04T12:50:05.9846543Z         "doc": {
2026-06-04T12:50:05.9847057Z           "complete": false,
2026-06-04T12:50:05.9847508Z           "evidence": []
2026-06-04T12:50:05.9847964Z         },
2026-06-04T12:50:05.9848398Z         "impl": {
2026-06-04T12:50:05.9848864Z           "complete": true,
2026-06-04T12:50:05.9849562Z           "evidence": [
2026-06-04T12:50:05.9850220Z             {
2026-06-04T12:50:05.9850837Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:50:05.9851667Z               "line": 20
2026-06-04T12:50:05.9852115Z             },
2026-06-04T12:50:05.9852550Z             {
2026-06-04T12:50:05.9853196Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:50:05.9853675Z               "line": 94
2026-06-04T12:50:05.9854141Z             },
2026-06-04T12:50:05.9854590Z             {
2026-06-04T12:50:05.9855311Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:50:05.9855793Z               "line": 70
2026-06-04T12:50:05.9856205Z             },
2026-06-04T12:50:05.9856621Z             {
2026-06-04T12:50:05.9857278Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:50:05.9857739Z               "line": 82
2026-06-04T12:50:05.9858177Z             }
2026-06-04T12:50:05.9858596Z           ]
2026-06-04T12:50:05.9859035Z         },
2026-06-04T12:50:05.9859551Z         "int": {
2026-06-04T12:50:05.9860312Z           "complete": false,
2026-06-04T12:50:05.9860789Z           "evidence": []
2026-06-04T12:50:05.9861224Z         },
2026-06-04T12:50:05.9861684Z         "unit": {
2026-06-04T12:50:05.9862175Z           "complete": true,
2026-06-04T12:50:05.9862668Z           "evidence": [
2026-06-04T12:50:05.9863088Z             {
2026-06-04T12:50:05.9863756Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:50:05.9864436Z               "line": 139
2026-06-04T12:50:05.9865041Z             },
2026-06-04T12:50:05.9865540Z             {
2026-06-04T12:50:05.9866235Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:50:05.9866756Z               "line": 162
2026-06-04T12:50:05.9867367Z             },
2026-06-04T12:50:05.9867776Z             {
2026-06-04T12:50:05.9868368Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:50:05.9868805Z               "line": 173
2026-06-04T12:50:05.9869271Z             },
2026-06-04T12:50:05.9869680Z             {
2026-06-04T12:50:05.9870447Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:50:05.9871078Z               "line": 189
2026-06-04T12:50:05.9871497Z             },
2026-06-04T12:50:05.9871899Z             {
2026-06-04T12:50:05.9872485Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:50:05.9872924Z               "line": 200
2026-06-04T12:50:05.9873323Z             },
2026-06-04T12:50:05.9873727Z             {
2026-06-04T12:50:05.9874356Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:50:05.9874791Z               "line": 139
2026-06-04T12:50:05.9875195Z             }
2026-06-04T12:50:05.9875587Z           ]
2026-06-04T12:50:05.9875988Z         }
2026-06-04T12:50:05.9876376Z       }
2026-06-04T12:50:05.9876780Z     },
2026-06-04T12:50:05.9877165Z     {
2026-06-04T12:50:05.9877662Z       "id": "REQ-HAZARD-ID-CHARSET",
2026-06-04T12:50:05.9879043Z       "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)",
2026-06-04T12:50:05.9879550Z       "requiredStages": [
2026-06-04T12:50:05.9879967Z         "impl",
2026-06-04T12:50:05.9880387Z         "unit"
2026-06-04T12:50:05.9880791Z       ],
2026-06-04T12:50:05.9881220Z       "stages": {
2026-06-04T12:50:05.9881621Z         "doc": {
2026-06-04T12:50:05.9882077Z           "complete": true,
2026-06-04T12:50:05.9882502Z           "evidence": [
2026-06-04T12:50:05.9882903Z             {
2026-06-04T12:50:05.9883424Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:50:05.9883863Z               "line": 131
2026-06-04T12:50:05.9884267Z             }
2026-06-04T12:50:05.9884655Z           ]
2026-06-04T12:50:05.9885057Z         },
2026-06-04T12:50:05.9885461Z         "impl": {
2026-06-04T12:50:05.9885912Z           "complete": true,
2026-06-04T12:50:05.9886330Z           "evidence": [
2026-06-04T12:50:05.9886736Z             {
2026-06-04T12:50:05.9887447Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:05.9888056Z               "line": 50
2026-06-04T12:50:05.9888477Z             },
2026-06-04T12:50:05.9888873Z             {
2026-06-04T12:50:05.9889726Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:50:05.9890157Z               "line": 17
2026-06-04T12:50:05.9890574Z             },
2026-06-04T12:50:05.9891022Z             {
2026-06-04T12:50:05.9891603Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:05.9892045Z               "line": 171
2026-06-04T12:50:05.9892446Z             },
2026-06-04T12:50:05.9892855Z             {
2026-06-04T12:50:05.9893436Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:05.9893876Z               "line": 265
2026-06-04T12:50:05.9894288Z             },
2026-06-04T12:50:05.9894678Z             {
2026-06-04T12:50:05.9895246Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:50:05.9895677Z               "line": 32
2026-06-04T12:50:05.9896083Z             }
2026-06-04T12:50:05.9896482Z           ]
2026-06-04T12:50:05.9896882Z         },
2026-06-04T12:50:05.9897461Z         "int": {
2026-06-04T12:50:05.9897914Z           "complete": false,
2026-06-04T12:50:05.9898369Z           "evidence": []
2026-06-04T12:50:05.9898767Z         },
2026-06-04T12:50:05.9899221Z         "unit": {
2026-06-04T12:50:05.9899674Z           "complete": true,
2026-06-04T12:50:05.9900110Z           "evidence": [
2026-06-04T12:50:05.9900514Z             {
2026-06-04T12:50:05.9901067Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:50:05.9901501Z               "line": 94
2026-06-04T12:50:05.9901897Z             },
2026-06-04T12:50:05.9902299Z             {
2026-06-04T12:50:05.9902847Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:50:05.9908555Z               "line": 111
2026-06-04T12:50:05.9909145Z             },
2026-06-04T12:50:05.9909655Z             {
2026-06-04T12:50:05.9910234Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:50:05.9910682Z               "line": 124
2026-06-04T12:50:05.9911085Z             },
2026-06-04T12:50:05.9911541Z             {
2026-06-04T12:50:05.9912100Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:50:05.9912558Z               "line": 134
2026-06-04T12:50:05.9912976Z             },
2026-06-04T12:50:05.9913372Z             {
2026-06-04T12:50:05.9913936Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:50:05.9914362Z               "line": 142
2026-06-04T12:50:05.9914776Z             },
2026-06-04T12:50:05.9915176Z             {
2026-06-04T12:50:05.9915740Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:50:05.9916183Z               "line": 154
2026-06-04T12:50:05.9916585Z             },
2026-06-04T12:50:05.9916991Z             {
2026-06-04T12:50:05.9917655Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:05.9918101Z               "line": 432
2026-06-04T12:50:05.9918513Z             }
2026-06-04T12:50:05.9918911Z           ]
2026-06-04T12:50:05.9919358Z         }
2026-06-04T12:50:05.9919758Z       }
2026-06-04T12:50:05.9920172Z     },
2026-06-04T12:50:05.9920562Z     {
2026-06-04T12:50:05.9921084Z       "id": "REQ-HAZARD-INBOX-NO-DOUBLE",
2026-06-04T12:50:05.9921768Z       "title": "No double-delivery via legacy inbox (4.5)",
2026-06-04T12:50:05.9922238Z       "requiredStages": [
2026-06-04T12:50:05.9922650Z         "impl",
2026-06-04T12:50:05.9923053Z         "unit"
2026-06-04T12:50:05.9923451Z       ],
2026-06-04T12:50:05.9923863Z       "stages": {
2026-06-04T12:50:05.9924285Z         "doc": {
2026-06-04T12:50:05.9924735Z           "complete": false,
2026-06-04T12:50:05.9925177Z           "evidence": []
2026-06-04T12:50:05.9925583Z         },
2026-06-04T12:50:05.9925992Z         "impl": {
2026-06-04T12:50:05.9926447Z           "complete": true,
2026-06-04T12:50:05.9926878Z           "evidence": [
2026-06-04T12:50:05.9927288Z             {
2026-06-04T12:50:05.9927865Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:05.9928308Z               "line": 128
2026-06-04T12:50:05.9928716Z             }
2026-06-04T12:50:05.9929124Z           ]
2026-06-04T12:50:05.9929564Z         },
2026-06-04T12:50:05.9930219Z         "int": {
2026-06-04T12:50:05.9930680Z           "complete": false,
2026-06-04T12:50:05.9931116Z           "evidence": []
2026-06-04T12:50:05.9931529Z         },
2026-06-04T12:50:05.9931949Z         "unit": {
2026-06-04T12:50:05.9932398Z           "complete": true,
2026-06-04T12:50:05.9932831Z           "evidence": [
2026-06-04T12:50:05.9933230Z             {
2026-06-04T12:50:05.9933817Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:05.9934266Z               "line": 205
2026-06-04T12:50:05.9934713Z             }
2026-06-04T12:50:05.9935142Z           ]
2026-06-04T12:50:05.9935538Z         }
2026-06-04T12:50:05.9935945Z       }
2026-06-04T12:50:05.9936337Z     },
2026-06-04T12:50:05.9936736Z     {
2026-06-04T12:50:05.9937298Z       "id": "REQ-HAZARD-INFO-JSON-TORN-READ",
2026-06-04T12:50:05.9938096Z       "title": "State-file reads tolerate concurrent writes (1.2)",
2026-06-04T12:50:05.9938779Z       "requiredStages": [
2026-06-04T12:50:05.9939234Z         "impl",
2026-06-04T12:50:05.9939667Z         "unit"
2026-06-04T12:50:05.9940069Z       ],
2026-06-04T12:50:05.9940496Z       "stages": {
2026-06-04T12:50:05.9940905Z         "doc": {
2026-06-04T12:50:05.9941369Z           "complete": false,
2026-06-04T12:50:05.9941815Z           "evidence": []
2026-06-04T12:50:05.9942211Z         },
2026-06-04T12:50:05.9942628Z         "impl": {
2026-06-04T12:50:05.9943073Z           "complete": true,
2026-06-04T12:50:05.9943508Z           "evidence": [
2026-06-04T12:50:05.9943907Z             {
2026-06-04T12:50:05.9944489Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9944924Z               "line": 190
2026-06-04T12:50:05.9945323Z             },
2026-06-04T12:50:05.9945730Z             {
2026-06-04T12:50:05.9946297Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9946738Z               "line": 201
2026-06-04T12:50:05.9947151Z             },
2026-06-04T12:50:05.9947566Z             {
2026-06-04T12:50:05.9948143Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9948584Z               "line": 219
2026-06-04T12:50:05.9948990Z             }
2026-06-04T12:50:05.9949427Z           ]
2026-06-04T12:50:05.9949832Z         },
2026-06-04T12:50:05.9950243Z         "int": {
2026-06-04T12:50:05.9950692Z           "complete": false,
2026-06-04T12:50:05.9951129Z           "evidence": []
2026-06-04T12:50:05.9951530Z         },
2026-06-04T12:50:05.9951944Z         "unit": {
2026-06-04T12:50:05.9952384Z           "complete": true,
2026-06-04T12:50:05.9952820Z           "evidence": [
2026-06-04T12:50:05.9953219Z             {
2026-06-04T12:50:05.9953795Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9954225Z               "line": 243
2026-06-04T12:50:05.9954626Z             },
2026-06-04T12:50:05.9955033Z             {
2026-06-04T12:50:05.9955598Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9956050Z               "line": 261
2026-06-04T12:50:05.9956462Z             },
2026-06-04T12:50:05.9956879Z             {
2026-06-04T12:50:05.9957455Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9957884Z               "line": 398
2026-06-04T12:50:05.9958297Z             },
2026-06-04T12:50:05.9958691Z             {
2026-06-04T12:50:05.9959313Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9959756Z               "line": 409
2026-06-04T12:50:05.9960159Z             },
2026-06-04T12:50:05.9960561Z             {
2026-06-04T12:50:05.9961127Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:05.9961567Z               "line": 422
2026-06-04T12:50:05.9961965Z             }
2026-06-04T12:50:05.9962374Z           ]
2026-06-04T12:50:05.9962777Z         }
2026-06-04T12:50:05.9963168Z       }
2026-06-04T12:50:05.9963687Z     },
2026-06-04T12:50:05.9964078Z     {
2026-06-04T12:50:05.9964598Z       "id": "REQ-HAZARD-LOCAL-API-AUTH",
2026-06-04T12:50:05.9965846Z       "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)",
2026-06-04T12:50:05.9966481Z       "requiredStages": [
2026-06-04T12:50:05.9966904Z         "impl",
2026-06-04T12:50:05.9967311Z         "unit"
2026-06-04T12:50:05.9967719Z       ],
2026-06-04T12:50:05.9968132Z       "stages": {
2026-06-04T12:50:05.9968551Z         "doc": {
2026-06-04T12:50:05.9969000Z           "complete": false,
2026-06-04T12:50:05.9969485Z           "evidence": []
2026-06-04T12:50:05.9969900Z         },
2026-06-04T12:50:05.9970311Z         "impl": {
2026-06-04T12:50:05.9970757Z           "complete": true,
2026-06-04T12:50:05.9971190Z           "evidence": [
2026-06-04T12:50:05.9971602Z             {
2026-06-04T12:50:05.9972151Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:50:05.9972588Z               "line": 14
2026-06-04T12:50:05.9973004Z             },
2026-06-04T12:50:05.9973402Z             {
2026-06-04T12:50:05.9973949Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:50:05.9974529Z               "line": 305
2026-06-04T12:50:05.9974955Z             }
2026-06-04T12:50:05.9975355Z           ]
2026-06-04T12:50:05.9975760Z         },
2026-06-04T12:50:05.9976183Z         "int": {
2026-06-04T12:50:05.9976635Z           "complete": false,
2026-06-04T12:50:05.9977077Z           "evidence": []
2026-06-04T12:50:05.9977480Z         },
2026-06-04T12:50:05.9977902Z         "unit": {
2026-06-04T12:50:05.9978349Z           "complete": true,
2026-06-04T12:50:05.9978786Z           "evidence": [
2026-06-04T12:50:05.9979242Z             {
2026-06-04T12:50:05.9979801Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:50:05.9980248Z               "line": 130
2026-06-04T12:50:05.9980734Z             },
2026-06-04T12:50:05.9981144Z             {
2026-06-04T12:50:05.9981692Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:50:05.9982132Z               "line": 138
2026-06-04T12:50:05.9982541Z             },
2026-06-04T12:50:05.9982950Z             {
2026-06-04T12:50:05.9987409Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:50:05.9988002Z               "line": 146
2026-06-04T12:50:05.9988423Z             },
2026-06-04T12:50:05.9988822Z             {
2026-06-04T12:50:05.9989476Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:50:05.9989931Z               "line": 154
2026-06-04T12:50:05.9990332Z             },
2026-06-04T12:50:05.9990741Z             {
2026-06-04T12:50:05.9991290Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:50:05.9991731Z               "line": 162
2026-06-04T12:50:05.9992132Z             },
2026-06-04T12:50:05.9992535Z             {
2026-06-04T12:50:05.9993086Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:50:05.9993514Z               "line": 170
2026-06-04T12:50:05.9993925Z             }
2026-06-04T12:50:05.9994321Z           ]
2026-06-04T12:50:05.9994721Z         }
2026-06-04T12:50:05.9995116Z       }
2026-06-04T12:50:05.9995531Z     },
2026-06-04T12:50:05.9995934Z     {
2026-06-04T12:50:05.9996461Z       "id": "REQ-HAZARD-PAIR-RATE-LIMIT",
2026-06-04T12:50:06.0001665Z       "title": "Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)",
2026-06-04T12:50:06.0002158Z       "requiredStages": [
2026-06-04T12:50:06.0002578Z         "impl",
2026-06-04T12:50:06.0002992Z         "unit"
2026-06-04T12:50:06.0003386Z       ],
2026-06-04T12:50:06.0003810Z       "stages": {
2026-06-04T12:50:06.0004219Z         "doc": {
2026-06-04T12:50:06.0004681Z           "complete": false,
2026-06-04T12:50:06.0005114Z           "evidence": []
2026-06-04T12:50:06.0005522Z         },
2026-06-04T12:50:06.0005948Z         "impl": {
2026-06-04T12:50:06.0006394Z           "complete": true,
2026-06-04T12:50:06.0006839Z           "evidence": [
2026-06-04T12:50:06.0007284Z             {
2026-06-04T12:50:06.0008038Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0008730Z               "line": 34
2026-06-04T12:50:06.0009137Z             }
2026-06-04T12:50:06.0009591Z           ]
2026-06-04T12:50:06.0009991Z         },
2026-06-04T12:50:06.0010404Z         "int": {
2026-06-04T12:50:06.0010852Z           "complete": false,
2026-06-04T12:50:06.0011294Z           "evidence": []
2026-06-04T12:50:06.0011687Z         },
2026-06-04T12:50:06.0012105Z         "unit": {
2026-06-04T12:50:06.0012556Z           "complete": true,
2026-06-04T12:50:06.0012987Z           "evidence": [
2026-06-04T12:50:06.0013394Z             {
2026-06-04T12:50:06.0014139Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0014580Z               "line": 188
2026-06-04T12:50:06.0015002Z             },
2026-06-04T12:50:06.0015417Z             {
2026-06-04T12:50:06.0016164Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0016758Z               "line": 200
2026-06-04T12:50:06.0017178Z             },
2026-06-04T12:50:06.0017568Z             {
2026-06-04T12:50:06.0018315Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0018746Z               "line": 211
2026-06-04T12:50:06.0019192Z             },
2026-06-04T12:50:06.0019610Z             {
2026-06-04T12:50:06.0020342Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0020781Z               "line": 245
2026-06-04T12:50:06.0021183Z             },
2026-06-04T12:50:06.0021582Z             {
2026-06-04T12:50:06.0022308Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0022751Z               "line": 267
2026-06-04T12:50:06.0023158Z             },
2026-06-04T12:50:06.0023551Z             {
2026-06-04T12:50:06.0024295Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0024724Z               "line": 288
2026-06-04T12:50:06.0025149Z             },
2026-06-04T12:50:06.0025564Z             {
2026-06-04T12:50:06.0026302Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:50:06.0026737Z               "line": 304
2026-06-04T12:50:06.0027128Z             }
2026-06-04T12:50:06.0027532Z           ]
2026-06-04T12:50:06.0027928Z         }
2026-06-04T12:50:06.0028328Z       }
2026-06-04T12:50:06.0028713Z     },
2026-06-04T12:50:06.0029117Z     {
2026-06-04T12:50:06.0029711Z       "id": "REQ-HAZARD-PAIR-SEED-ROTATION",
2026-06-04T12:50:06.0032971Z       "title": "Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)",
2026-06-04T12:50:06.0033441Z       "requiredStages": [
2026-06-04T12:50:06.0033850Z         "impl",
2026-06-04T12:50:06.0034267Z         "unit"
2026-06-04T12:50:06.0034669Z       ],
2026-06-04T12:50:06.0035101Z       "stages": {
2026-06-04T12:50:06.0035513Z         "doc": {
2026-06-04T12:50:06.0035979Z           "complete": false,
2026-06-04T12:50:06.0036418Z           "evidence": []
2026-06-04T12:50:06.0036816Z         },
2026-06-04T12:50:06.0037237Z         "impl": {
2026-06-04T12:50:06.0037684Z           "complete": true,
2026-06-04T12:50:06.0038108Z           "evidence": [
2026-06-04T12:50:06.0038516Z             {
2026-06-04T12:50:06.0039110Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0039581Z               "line": 29
2026-06-04T12:50:06.0039981Z             },
2026-06-04T12:50:06.0040381Z             {
2026-06-04T12:50:06.0040976Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0041401Z               "line": 154
2026-06-04T12:50:06.0041811Z             },
2026-06-04T12:50:06.0042205Z             {
2026-06-04T12:50:06.0042800Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0043229Z               "line": 173
2026-06-04T12:50:06.0043653Z             },
2026-06-04T12:50:06.0044057Z             {
2026-06-04T12:50:06.0044794Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0045237Z               "line": 200
2026-06-04T12:50:06.0045637Z             }
2026-06-04T12:50:06.0046038Z           ]
2026-06-04T12:50:06.0046424Z         },
2026-06-04T12:50:06.0046831Z         "int": {
2026-06-04T12:50:06.0047283Z           "complete": false,
2026-06-04T12:50:06.0047718Z           "evidence": []
2026-06-04T12:50:06.0048121Z         },
2026-06-04T12:50:06.0048526Z         "unit": {
2026-06-04T12:50:06.0048981Z           "complete": true,
2026-06-04T12:50:06.0049446Z           "evidence": [
2026-06-04T12:50:06.0049855Z             {
2026-06-04T12:50:06.0050450Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0050885Z               "line": 276
2026-06-04T12:50:06.0051289Z             },
2026-06-04T12:50:06.0051682Z             {
2026-06-04T12:50:06.0052274Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0052849Z               "line": 291
2026-06-04T12:50:06.0053278Z             },
2026-06-04T12:50:06.0053678Z             {
2026-06-04T12:50:06.0054260Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0054693Z               "line": 310
2026-06-04T12:50:06.0055093Z             },
2026-06-04T12:50:06.0055492Z             {
2026-06-04T12:50:06.0056070Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0056513Z               "line": 326
2026-06-04T12:50:06.0056916Z             },
2026-06-04T12:50:06.0057311Z             {
2026-06-04T12:50:06.0057891Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0058318Z               "line": 376
2026-06-04T12:50:06.0058719Z             },
2026-06-04T12:50:06.0059111Z             {
2026-06-04T12:50:06.0059744Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0060186Z               "line": 390
2026-06-04T12:50:06.0060582Z             },
2026-06-04T12:50:06.0060998Z             {
2026-06-04T12:50:06.0061579Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0062031Z               "line": 401
2026-06-04T12:50:06.0062442Z             },
2026-06-04T12:50:06.0062834Z             {
2026-06-04T12:50:06.0063417Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.0063841Z               "line": 412
2026-06-04T12:50:06.0064253Z             }
2026-06-04T12:50:06.0064650Z           ]
2026-06-04T12:50:06.0065048Z         }
2026-06-04T12:50:06.0065455Z       }
2026-06-04T12:50:06.0065846Z     },
2026-06-04T12:50:06.0066243Z     {
2026-06-04T12:50:06.0066823Z       "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND",
2026-06-04T12:50:06.0070555Z       "title": "Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)",
2026-06-04T12:50:06.0071025Z       "requiredStages": [
2026-06-04T12:50:06.0071477Z         "impl",
2026-06-04T12:50:06.0071890Z         "unit"
2026-06-04T12:50:06.0072299Z       ],
2026-06-04T12:50:06.0076240Z       "stages": {
2026-06-04T12:50:06.0076743Z         "doc": {
2026-06-04T12:50:06.0077223Z           "complete": false,
2026-06-04T12:50:06.0077663Z           "evidence": []
2026-06-04T12:50:06.0078068Z         },
2026-06-04T12:50:06.0078489Z         "impl": {
2026-06-04T12:50:06.0078934Z           "complete": true,
2026-06-04T12:50:06.0079446Z           "evidence": [
2026-06-04T12:50:06.0079852Z             {
2026-06-04T12:50:06.0080552Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0080984Z               "line": 27
2026-06-04T12:50:06.0081396Z             },
2026-06-04T12:50:06.0081800Z             {
2026-06-04T12:50:06.0082465Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0082905Z               "line": 110
2026-06-04T12:50:06.0083304Z             },
2026-06-04T12:50:06.0083748Z             {
2026-06-04T12:50:06.0084420Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0085115Z               "line": 153
2026-06-04T12:50:06.0085531Z             },
2026-06-04T12:50:06.0085923Z             {
2026-06-04T12:50:06.0086611Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0087047Z               "line": 182
2026-06-04T12:50:06.0087456Z             },
2026-06-04T12:50:06.0087856Z             {
2026-06-04T12:50:06.0088629Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0089063Z               "line": 31
2026-06-04T12:50:06.0089512Z             },
2026-06-04T12:50:06.0089923Z             {
2026-06-04T12:50:06.0090672Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0091171Z               "line": 113
2026-06-04T12:50:06.0091586Z             },
2026-06-04T12:50:06.0091986Z             {
2026-06-04T12:50:06.0092738Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0093353Z               "line": 138
2026-06-04T12:50:06.0093781Z             }
2026-06-04T12:50:06.0094171Z           ]
2026-06-04T12:50:06.0094575Z         },
2026-06-04T12:50:06.0094988Z         "int": {
2026-06-04T12:50:06.0095438Z           "complete": false,
2026-06-04T12:50:06.0095882Z           "evidence": []
2026-06-04T12:50:06.0096277Z         },
2026-06-04T12:50:06.0096697Z         "unit": {
2026-06-04T12:50:06.0097141Z           "complete": true,
2026-06-04T12:50:06.0097580Z           "evidence": [
2026-06-04T12:50:06.0097985Z             {
2026-06-04T12:50:06.0098659Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0099097Z               "line": 261
2026-06-04T12:50:06.0099529Z             },
2026-06-04T12:50:06.0099932Z             {
2026-06-04T12:50:06.0100604Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0101043Z               "line": 276
2026-06-04T12:50:06.0101473Z             },
2026-06-04T12:50:06.0101871Z             {
2026-06-04T12:50:06.0102560Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0102990Z               "line": 293
2026-06-04T12:50:06.0103401Z             },
2026-06-04T12:50:06.0103796Z             {
2026-06-04T12:50:06.0104471Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0104908Z               "line": 310
2026-06-04T12:50:06.0105307Z             },
2026-06-04T12:50:06.0105710Z             {
2026-06-04T12:50:06.0106387Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0106822Z               "line": 327
2026-06-04T12:50:06.0107224Z             },
2026-06-04T12:50:06.0107633Z             {
2026-06-04T12:50:06.0108309Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.0108734Z               "line": 366
2026-06-04T12:50:06.0109145Z             },
2026-06-04T12:50:06.0109584Z             {
2026-06-04T12:50:06.0110354Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0110795Z               "line": 179
2026-06-04T12:50:06.0111202Z             },
2026-06-04T12:50:06.0111601Z             {
2026-06-04T12:50:06.0112344Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0112788Z               "line": 194
2026-06-04T12:50:06.0113190Z             },
2026-06-04T12:50:06.0113596Z             {
2026-06-04T12:50:06.0114352Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0114778Z               "line": 204
2026-06-04T12:50:06.0115184Z             },
2026-06-04T12:50:06.0115579Z             {
2026-06-04T12:50:06.0116341Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0116776Z               "line": 259
2026-06-04T12:50:06.0117193Z             },
2026-06-04T12:50:06.0117599Z             {
2026-06-04T12:50:06.0118343Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0118804Z               "line": 269
2026-06-04T12:50:06.0119428Z             },
2026-06-04T12:50:06.0119842Z             {
2026-06-04T12:50:06.0120599Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.0121060Z               "line": 283
2026-06-04T12:50:06.0121483Z             }
2026-06-04T12:50:06.0121903Z           ]
2026-06-04T12:50:06.0122319Z         }
2026-06-04T12:50:06.0122731Z       }
2026-06-04T12:50:06.0123159Z     },
2026-06-04T12:50:06.0123565Z     {
2026-06-04T12:50:06.0124129Z       "id": "REQ-HAZARD-PARENT-PID-PREFER",
2026-06-04T12:50:06.0125180Z       "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)",
2026-06-04T12:50:06.0125656Z       "requiredStages": [],
2026-06-04T12:50:06.0126099Z       "stages": {
2026-06-04T12:50:06.0126516Z         "doc": {
2026-06-04T12:50:06.0126996Z           "complete": false,
2026-06-04T12:50:06.0127447Z           "evidence": []
2026-06-04T12:50:06.0128040Z         },
2026-06-04T12:50:06.0128468Z         "impl": {
2026-06-04T12:50:06.0128932Z           "complete": false,
2026-06-04T12:50:06.0129419Z           "evidence": []
2026-06-04T12:50:06.0129814Z         },
2026-06-04T12:50:06.0130224Z         "int": {
2026-06-04T12:50:06.0130666Z           "complete": false,
2026-06-04T12:50:06.0131184Z           "evidence": []
2026-06-04T12:50:06.0131588Z         },
2026-06-04T12:50:06.0131993Z         "unit": {
2026-06-04T12:50:06.0132450Z           "complete": false,
2026-06-04T12:50:06.0132882Z           "evidence": []
2026-06-04T12:50:06.0133288Z         }
2026-06-04T12:50:06.0133680Z       }
2026-06-04T12:50:06.0134081Z     },
2026-06-04T12:50:06.0134480Z     {
2026-06-04T12:50:06.0135088Z       "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY",
2026-06-04T12:50:06.0146334Z       "title": "Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)",
2026-06-04T12:50:06.0147014Z       "requiredStages": [
2026-06-04T12:50:06.0147436Z         "impl",
2026-06-04T12:50:06.0147847Z         "unit"
2026-06-04T12:50:06.0148237Z       ],
2026-06-04T12:50:06.0148652Z       "stages": {
2026-06-04T12:50:06.0149065Z         "doc": {
2026-06-04T12:50:06.0149606Z           "complete": false,
2026-06-04T12:50:06.0150042Z           "evidence": []
2026-06-04T12:50:06.0150447Z         },
2026-06-04T12:50:06.0150858Z         "impl": {
2026-06-04T12:50:06.0151297Z           "complete": true,
2026-06-04T12:50:06.0151727Z           "evidence": [
2026-06-04T12:50:06.0152118Z             {
2026-06-04T12:50:06.0152748Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0153173Z               "line": 26
2026-06-04T12:50:06.0153574Z             },
2026-06-04T12:50:06.0153976Z             {
2026-06-04T12:50:06.0154587Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0155037Z               "line": 93
2026-06-04T12:50:06.0155431Z             },
2026-06-04T12:50:06.0155849Z             {
2026-06-04T12:50:06.0156459Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0156907Z               "line": 158
2026-06-04T12:50:06.0157314Z             },
2026-06-04T12:50:06.0157711Z             {
2026-06-04T12:50:06.0158313Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0158741Z               "line": 19
2026-06-04T12:50:06.0159151Z             },
2026-06-04T12:50:06.0159597Z             {
2026-06-04T12:50:06.0160206Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0160641Z               "line": 50
2026-06-04T12:50:06.0161038Z             },
2026-06-04T12:50:06.0161442Z             {
2026-06-04T12:50:06.0161990Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:50:06.0162425Z               "line": 18
2026-06-04T12:50:06.0162832Z             },
2026-06-04T12:50:06.0163237Z             {
2026-06-04T12:50:06.0163802Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:50:06.0164550Z               "line": 65
2026-06-04T12:50:06.0169100Z             },
2026-06-04T12:50:06.0169658Z             {
2026-06-04T12:50:06.0170279Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:06.0170720Z               "line": 51
2026-06-04T12:50:06.0171120Z             }
2026-06-04T12:50:06.0171530Z           ]
2026-06-04T12:50:06.0171924Z         },
2026-06-04T12:50:06.0172339Z         "int": {
2026-06-04T12:50:06.0172790Z           "complete": false,
2026-06-04T12:50:06.0173228Z           "evidence": []
2026-06-04T12:50:06.0173632Z         },
2026-06-04T12:50:06.0174035Z         "unit": {
2026-06-04T12:50:06.0174488Z           "complete": true,
2026-06-04T12:50:06.0174915Z           "evidence": [
2026-06-04T12:50:06.0175323Z             {
2026-06-04T12:50:06.0175941Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0176624Z               "line": 276
2026-06-04T12:50:06.0177034Z             },
2026-06-04T12:50:06.0177448Z             {
2026-06-04T12:50:06.0178071Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0178507Z               "line": 295
2026-06-04T12:50:06.0178913Z             },
2026-06-04T12:50:06.0179437Z             {
2026-06-04T12:50:06.0180107Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0180558Z               "line": 323
2026-06-04T12:50:06.0180962Z             },
2026-06-04T12:50:06.0181367Z             {
2026-06-04T12:50:06.0181983Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0182426Z               "line": 372
2026-06-04T12:50:06.0182829Z             },
2026-06-04T12:50:06.0183236Z             {
2026-06-04T12:50:06.0183865Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0184298Z               "line": 383
2026-06-04T12:50:06.0184708Z             },
2026-06-04T12:50:06.0185100Z             {
2026-06-04T12:50:06.0185744Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0186179Z               "line": 414
2026-06-04T12:50:06.0186582Z             },
2026-06-04T12:50:06.0186983Z             {
2026-06-04T12:50:06.0187599Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.0188040Z               "line": 425
2026-06-04T12:50:06.0188437Z             },
2026-06-04T12:50:06.0188839Z             {
2026-06-04T12:50:06.0189485Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0189918Z               "line": 77
2026-06-04T12:50:06.0190328Z             },
2026-06-04T12:50:06.0190727Z             {
2026-06-04T12:50:06.0191324Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0191745Z               "line": 95
2026-06-04T12:50:06.0192150Z             },
2026-06-04T12:50:06.0192547Z             {
2026-06-04T12:50:06.0193150Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0193605Z               "line": 106
2026-06-04T12:50:06.0193997Z             },
2026-06-04T12:50:06.0194408Z             {
2026-06-04T12:50:06.0195006Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0195450Z               "line": 117
2026-06-04T12:50:06.0195844Z             },
2026-06-04T12:50:06.0196249Z             {
2026-06-04T12:50:06.0196853Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0197282Z               "line": 124
2026-06-04T12:50:06.0197686Z             },
2026-06-04T12:50:06.0198084Z             {
2026-06-04T12:50:06.0198680Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:50:06.0199114Z               "line": 137
2026-06-04T12:50:06.0199553Z             },
2026-06-04T12:50:06.0199961Z             {
2026-06-04T12:50:06.0200512Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:50:06.0200955Z               "line": 106
2026-06-04T12:50:06.0201352Z             },
2026-06-04T12:50:06.0201759Z             {
2026-06-04T12:50:06.0202328Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:50:06.0202947Z               "line": 118
2026-06-04T12:50:06.0203350Z             },
2026-06-04T12:50:06.0203747Z             {
2026-06-04T12:50:06.0204329Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:50:06.0204758Z               "line": 317
2026-06-04T12:50:06.0205158Z             }
2026-06-04T12:50:06.0205558Z           ]
2026-06-04T12:50:06.0205951Z         }
2026-06-04T12:50:06.0206350Z       }
2026-06-04T12:50:06.0206739Z     },
2026-06-04T12:50:06.0207139Z     {
2026-06-04T12:50:06.0207699Z       "id": "REQ-HAZARD-REGISTRY-CONCURRENT",
2026-06-04T12:50:06.0209141Z       "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)",
2026-06-04T12:50:06.0209670Z       "requiredStages": [
2026-06-04T12:50:06.0210075Z         "impl",
2026-06-04T12:50:06.0210490Z         "unit"
2026-06-04T12:50:06.0210885Z       ],
2026-06-04T12:50:06.0211451Z       "stages": {
2026-06-04T12:50:06.0211855Z         "doc": {
2026-06-04T12:50:06.0212329Z           "complete": true,
2026-06-04T12:50:06.0212767Z           "evidence": [
2026-06-04T12:50:06.0213163Z             {
2026-06-04T12:50:06.0213705Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:50:06.0214134Z               "line": 137
2026-06-04T12:50:06.0214545Z             }
2026-06-04T12:50:06.0214946Z           ]
2026-06-04T12:50:06.0215348Z         },
2026-06-04T12:50:06.0215762Z         "impl": {
2026-06-04T12:50:06.0216203Z           "complete": true,
2026-06-04T12:50:06.0216642Z           "evidence": [
2026-06-04T12:50:06.0217043Z             {
2026-06-04T12:50:06.0217594Z               "path": "crates/spt-store/src/db.rs",
2026-06-04T12:50:06.0218020Z               "line": 29
2026-06-04T12:50:06.0218430Z             },
2026-06-04T12:50:06.0218833Z             {
2026-06-04T12:50:06.0219457Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.0219899Z               "line": 101
2026-06-04T12:50:06.0220319Z             },
2026-06-04T12:50:06.0220720Z             {
2026-06-04T12:50:06.0221336Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0221774Z               "line": 30
2026-06-04T12:50:06.0222180Z             },
2026-06-04T12:50:06.0222571Z             {
2026-06-04T12:50:06.0223158Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:06.0223578Z               "line": 48
2026-06-04T12:50:06.0223984Z             }
2026-06-04T12:50:06.0224375Z           ]
2026-06-04T12:50:06.0224782Z         },
2026-06-04T12:50:06.0225194Z         "int": {
2026-06-04T12:50:06.0225643Z           "complete": false,
2026-06-04T12:50:06.0226083Z           "evidence": []
2026-06-04T12:50:06.0226480Z         },
2026-06-04T12:50:06.0226891Z         "unit": {
2026-06-04T12:50:06.0227331Z           "complete": true,
2026-06-04T12:50:06.0227758Z           "evidence": [
2026-06-04T12:50:06.0228166Z             {
2026-06-04T12:50:06.0228770Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0229253Z               "line": 152
2026-06-04T12:50:06.0229661Z             }
2026-06-04T12:50:06.0230062Z           ]
2026-06-04T12:50:06.0230452Z         }
2026-06-04T12:50:06.0230858Z       }
2026-06-04T12:50:06.0231246Z     },
2026-06-04T12:50:06.0231633Z     {
2026-06-04T12:50:06.0232196Z       "id": "REQ-HAZARD-REGISTRY-DIR-CREATE",
2026-06-04T12:50:06.0234242Z       "title": "SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)",
2026-06-04T12:50:06.0234717Z       "requiredStages": [
2026-06-04T12:50:06.0235120Z         "doc",
2026-06-04T12:50:06.0235541Z         "impl",
2026-06-04T12:50:06.0235952Z         "unit"
2026-06-04T12:50:06.0236347Z       ],
2026-06-04T12:50:06.0236763Z       "stages": {
2026-06-04T12:50:06.0237167Z         "doc": {
2026-06-04T12:50:06.0237616Z           "complete": true,
2026-06-04T12:50:06.0238045Z           "evidence": [
2026-06-04T12:50:06.0238476Z             {
2026-06-04T12:50:06.0239011Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:50:06.0239731Z               "line": 149
2026-06-04T12:50:06.0240142Z             }
2026-06-04T12:50:06.0240544Z           ]
2026-06-04T12:50:06.0240946Z         },
2026-06-04T12:50:06.0241351Z         "impl": {
2026-06-04T12:50:06.0241797Z           "complete": true,
2026-06-04T12:50:06.0242231Z           "evidence": [
2026-06-04T12:50:06.0242629Z             {
2026-06-04T12:50:06.0243248Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0243672Z               "line": 22
2026-06-04T12:50:06.0244086Z             }
2026-06-04T12:50:06.0244476Z           ]
2026-06-04T12:50:06.0244874Z         },
2026-06-04T12:50:06.0250967Z         "int": {
2026-06-04T12:50:06.0251576Z           "complete": false,
2026-06-04T12:50:06.0252022Z           "evidence": []
2026-06-04T12:50:06.0252421Z         },
2026-06-04T12:50:06.0252833Z         "unit": {
2026-06-04T12:50:06.0253273Z           "complete": true,
2026-06-04T12:50:06.0253985Z           "evidence": [
2026-06-04T12:50:06.0254416Z             {
2026-06-04T12:50:06.0255040Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0255481Z               "line": 257
2026-06-04T12:50:06.0255875Z             }
2026-06-04T12:50:06.0256279Z           ]
2026-06-04T12:50:06.0256669Z         }
2026-06-04T12:50:06.0257071Z       }
2026-06-04T12:50:06.0257471Z     },
2026-06-04T12:50:06.0257860Z     {
2026-06-04T12:50:06.0258435Z       "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE",
2026-06-04T12:50:06.0260927Z       "title": "Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)",
2026-06-04T12:50:06.0261418Z       "requiredStages": [
2026-06-04T12:50:06.0261821Z         "impl",
2026-06-04T12:50:06.0262239Z         "unit"
2026-06-04T12:50:06.0262641Z       ],
2026-06-04T12:50:06.0263048Z       "stages": {
2026-06-04T12:50:06.0263457Z         "doc": {
2026-06-04T12:50:06.0263924Z           "complete": true,
2026-06-04T12:50:06.0264360Z           "evidence": [
2026-06-04T12:50:06.0264770Z             {
2026-06-04T12:50:06.0265311Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:50:06.0265748Z               "line": 143
2026-06-04T12:50:06.0266143Z             }
2026-06-04T12:50:06.0266549Z           ]
2026-06-04T12:50:06.0266939Z         },
2026-06-04T12:50:06.0267353Z         "impl": {
2026-06-04T12:50:06.0267792Z           "complete": true,
2026-06-04T12:50:06.0268223Z           "evidence": [
2026-06-04T12:50:06.0268629Z             {
2026-06-04T12:50:06.0269291Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.0269731Z               "line": 124
2026-06-04T12:50:06.0270126Z             },
2026-06-04T12:50:06.0270524Z             {
2026-06-04T12:50:06.0271099Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:50:06.0271534Z               "line": 15
2026-06-04T12:50:06.0271943Z             }
2026-06-04T12:50:06.0272347Z           ]
2026-06-04T12:50:06.0272747Z         },
2026-06-04T12:50:06.0273161Z         "int": {
2026-06-04T12:50:06.0273611Z           "complete": false,
2026-06-04T12:50:06.0274038Z           "evidence": []
2026-06-04T12:50:06.0274443Z         },
2026-06-04T12:50:06.0274850Z         "unit": {
2026-06-04T12:50:06.0275287Z           "complete": true,
2026-06-04T12:50:06.0275717Z           "evidence": [
2026-06-04T12:50:06.0276114Z             {
2026-06-04T12:50:06.0276775Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T12:50:06.0277194Z               "line": 87
2026-06-04T12:50:06.0277604Z             },
2026-06-04T12:50:06.0278007Z             {
2026-06-04T12:50:06.0278620Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.0279059Z               "line": 515
2026-06-04T12:50:06.0279505Z             },
2026-06-04T12:50:06.0279916Z             {
2026-06-04T12:50:06.0280524Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.0280981Z               "line": 534
2026-06-04T12:50:06.0281389Z             },
2026-06-04T12:50:06.0281972Z             {
2026-06-04T12:50:06.0282622Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:50:06.0283054Z               "line": 148
2026-06-04T12:50:06.0283458Z             },
2026-06-04T12:50:06.0283861Z             {
2026-06-04T12:50:06.0284432Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:50:06.0284863Z               "line": 74
2026-06-04T12:50:06.0285261Z             },
2026-06-04T12:50:06.0285655Z             {
2026-06-04T12:50:06.0286235Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:50:06.0286664Z               "line": 88
2026-06-04T12:50:06.0287069Z             },
2026-06-04T12:50:06.0287467Z             {
2026-06-04T12:50:06.0288054Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:50:06.0288481Z               "line": 104
2026-06-04T12:50:06.0288887Z             }
2026-06-04T12:50:06.0289463Z           ]
2026-06-04T12:50:06.0289869Z         }
2026-06-04T12:50:06.0290269Z       }
2026-06-04T12:50:06.0290674Z     },
2026-06-04T12:50:06.0291074Z     {
2026-06-04T12:50:06.0291649Z       "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN",
2026-06-04T12:50:06.0292686Z       "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)",
2026-06-04T12:50:06.0293136Z       "requiredStages": [
2026-06-04T12:50:06.0293550Z         "impl",
2026-06-04T12:50:06.0293959Z         "unit"
2026-06-04T12:50:06.0294353Z       ],
2026-06-04T12:50:06.0294768Z       "stages": {
2026-06-04T12:50:06.0295165Z         "doc": {
2026-06-04T12:50:06.0295617Z           "complete": false,
2026-06-04T12:50:06.0296045Z           "evidence": []
2026-06-04T12:50:06.0296448Z         },
2026-06-04T12:50:06.0296866Z         "impl": {
2026-06-04T12:50:06.0297315Z           "complete": true,
2026-06-04T12:50:06.0297745Z           "evidence": [
2026-06-04T12:50:06.0298136Z             {
2026-06-04T12:50:06.0298712Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:50:06.0299186Z               "line": 15
2026-06-04T12:50:06.0299628Z             },
2026-06-04T12:50:06.0300056Z             {
2026-06-04T12:50:06.0300670Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0301107Z               "line": 55
2026-06-04T12:50:06.0301505Z             },
2026-06-04T12:50:06.0301907Z             {
2026-06-04T12:50:06.0302505Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0302940Z               "line": 62
2026-06-04T12:50:06.0303342Z             },
2026-06-04T12:50:06.0303729Z             {
2026-06-04T12:50:06.0304336Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0304761Z               "line": 107
2026-06-04T12:50:06.0305166Z             },
2026-06-04T12:50:06.0305559Z             {
2026-06-04T12:50:06.0306171Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0306610Z               "line": 128
2026-06-04T12:50:06.0307021Z             }
2026-06-04T12:50:06.0307427Z           ]
2026-06-04T12:50:06.0307835Z         },
2026-06-04T12:50:06.0308242Z         "int": {
2026-06-04T12:50:06.0308681Z           "complete": false,
2026-06-04T12:50:06.0309120Z           "evidence": []
2026-06-04T12:50:06.0309619Z         },
2026-06-04T12:50:06.0310029Z         "unit": {
2026-06-04T12:50:06.0310478Z           "complete": true,
2026-06-04T12:50:06.0310898Z           "evidence": [
2026-06-04T12:50:06.0311303Z             {
2026-06-04T12:50:06.0311867Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:50:06.0312306Z               "line": 113
2026-06-04T12:50:06.0312709Z             },
2026-06-04T12:50:06.0313100Z             {
2026-06-04T12:50:06.0313670Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:50:06.0314097Z               "line": 119
2026-06-04T12:50:06.0314505Z             },
2026-06-04T12:50:06.0314897Z             {
2026-06-04T12:50:06.0315476Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:50:06.0315928Z               "line": 130
2026-06-04T12:50:06.0316506Z             },
2026-06-04T12:50:06.0316910Z             {
2026-06-04T12:50:06.0317511Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0317949Z               "line": 183
2026-06-04T12:50:06.0318348Z             },
2026-06-04T12:50:06.0318756Z             {
2026-06-04T12:50:06.0319410Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0319845Z               "line": 193
2026-06-04T12:50:06.0320254Z             },
2026-06-04T12:50:06.0320645Z             {
2026-06-04T12:50:06.0321253Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0321693Z               "line": 237
2026-06-04T12:50:06.0322093Z             },
2026-06-04T12:50:06.0322491Z             {
2026-06-04T12:50:06.0323091Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0323526Z               "line": 249
2026-06-04T12:50:06.0323927Z             },
2026-06-04T12:50:06.0324463Z             {
2026-06-04T12:50:06.0325080Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.0325521Z               "line": 275
2026-06-04T12:50:06.0325927Z             }
2026-06-04T12:50:06.0326321Z           ]
2026-06-04T12:50:06.0326721Z         }
2026-06-04T12:50:06.0330981Z       }
2026-06-04T12:50:06.0331490Z     },
2026-06-04T12:50:06.0331898Z     {
2026-06-04T12:50:06.0332463Z       "id": "REQ-HAZARD-RESTART-IDEMPOTENT",
2026-06-04T12:50:06.0333952Z       "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)",
2026-06-04T12:50:06.0334412Z       "requiredStages": [
2026-06-04T12:50:06.0334834Z         "impl",
2026-06-04T12:50:06.0335254Z         "unit",
2026-06-04T12:50:06.0335662Z         "int"
2026-06-04T12:50:06.0336065Z       ],
2026-06-04T12:50:06.0336474Z       "stages": {
2026-06-04T12:50:06.0336878Z         "doc": {
2026-06-04T12:50:06.0337327Z           "complete": false,
2026-06-04T12:50:06.0337815Z           "evidence": []
2026-06-04T12:50:06.0338213Z         },
2026-06-04T12:50:06.0338655Z         "impl": {
2026-06-04T12:50:06.0339107Z           "complete": true,
2026-06-04T12:50:06.0339593Z           "evidence": [
2026-06-04T12:50:06.0340001Z             {
2026-06-04T12:50:06.0340594Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:06.0341029Z               "line": 246
2026-06-04T12:50:06.0341432Z             },
2026-06-04T12:50:06.0341839Z             {
2026-06-04T12:50:06.0342432Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:06.0342861Z               "line": 506
2026-06-04T12:50:06.0343265Z             },
2026-06-04T12:50:06.0343661Z             {
2026-06-04T12:50:06.0344255Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:06.0344689Z               "line": 529
2026-06-04T12:50:06.0345104Z             },
2026-06-04T12:50:06.0345507Z             {
2026-06-04T12:50:06.0346084Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:06.0346536Z               "line": 553
2026-06-04T12:50:06.0346949Z             },
2026-06-04T12:50:06.0347355Z             {
2026-06-04T12:50:06.0347955Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:06.0348391Z               "line": 463
2026-06-04T12:50:06.0348798Z             },
2026-06-04T12:50:06.0349235Z             {
2026-06-04T12:50:06.0349849Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:06.0350318Z               "line": 544
2026-06-04T12:50:06.0350727Z             },
2026-06-04T12:50:06.0351124Z             {
2026-06-04T12:50:06.0351731Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:06.0352165Z               "line": 588
2026-06-04T12:50:06.0352565Z             },
2026-06-04T12:50:06.0352967Z             {
2026-06-04T12:50:06.0353560Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:50:06.0353993Z               "line": 631
2026-06-04T12:50:06.0354390Z             },
2026-06-04T12:50:06.0354814Z             {
2026-06-04T12:50:06.0355419Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:50:06.0356108Z               "line": 46
2026-06-04T12:50:06.0356518Z             },
2026-06-04T12:50:06.0356912Z             {
2026-06-04T12:50:06.0357518Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:50:06.0357947Z               "line": 160
2026-06-04T12:50:06.0358353Z             },
2026-06-04T12:50:06.0358758Z             {
2026-06-04T12:50:06.0359370Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T12:50:06.0359807Z               "line": 71
2026-06-04T12:50:06.0360207Z             },
2026-06-04T12:50:06.0360612Z             {
2026-06-04T12:50:06.0361186Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:06.0361636Z               "line": 128
2026-06-04T12:50:06.0362041Z             },
2026-06-04T12:50:06.0362434Z             {
2026-06-04T12:50:06.0363012Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:06.0363590Z               "line": 174
2026-06-04T12:50:06.0364014Z             }
2026-06-04T12:50:06.0364421Z           ]
2026-06-04T12:50:06.0364818Z         },
2026-06-04T12:50:06.0365235Z         "int": {
2026-06-04T12:50:06.0365686Z           "complete": true,
2026-06-04T12:50:06.0366120Z           "evidence": [
2026-06-04T12:50:06.0366519Z             {
2026-06-04T12:50:06.0367196Z               "path": "crates/spt-daemon/tests/idempotent.rs",
2026-06-04T12:50:06.0367631Z               "line": 27
2026-06-04T12:50:06.0368029Z             },
2026-06-04T12:50:06.0368434Z             {
2026-06-04T12:50:06.0369090Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:50:06.0369570Z               "line": 125
2026-06-04T12:50:06.0369990Z             },
2026-06-04T12:50:06.0370399Z             {
2026-06-04T12:50:06.0371064Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T12:50:06.0371505Z               "line": 189
2026-06-04T12:50:06.0371927Z             }
2026-06-04T12:50:06.0372320Z           ]
2026-06-04T12:50:06.0372737Z         },
2026-06-04T12:50:06.0373147Z         "unit": {
2026-06-04T12:50:06.0373600Z           "complete": true,
2026-06-04T12:50:06.0374035Z           "evidence": [
2026-06-04T12:50:06.0374436Z             {
2026-06-04T12:50:06.0375046Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:50:06.0375471Z               "line": 282
2026-06-04T12:50:06.0375881Z             },
2026-06-04T12:50:06.0376281Z             {
2026-06-04T12:50:06.0376891Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:50:06.0377336Z               "line": 300
2026-06-04T12:50:06.0377737Z             },
2026-06-04T12:50:06.0378141Z             {
2026-06-04T12:50:06.0378747Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:50:06.0379240Z               "line": 318
2026-06-04T12:50:06.0379651Z             },
2026-06-04T12:50:06.0380081Z             {
2026-06-04T12:50:06.0380724Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:50:06.0381165Z               "line": 221
2026-06-04T12:50:06.0381592Z             },
2026-06-04T12:50:06.0381990Z             {
2026-06-04T12:50:06.0382617Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T12:50:06.0383049Z               "line": 204
2026-06-04T12:50:06.0383459Z             },
2026-06-04T12:50:06.0383865Z             {
2026-06-04T12:50:06.0384458Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T12:50:06.0384891Z               "line": 182
2026-06-04T12:50:06.0385289Z             },
2026-06-04T12:50:06.0385695Z             {
2026-06-04T12:50:06.0386274Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:06.0386719Z               "line": 441
2026-06-04T12:50:06.0387128Z             },
2026-06-04T12:50:06.0387526Z             {
2026-06-04T12:50:06.0388111Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:06.0388542Z               "line": 465
2026-06-04T12:50:06.0388967Z             }
2026-06-04T12:50:06.0389401Z           ]
2026-06-04T12:50:06.0389999Z         }
2026-06-04T12:50:06.0390409Z       }
2026-06-04T12:50:06.0390804Z     },
2026-06-04T12:50:06.0391204Z     {
2026-06-04T12:50:06.0391775Z       "id": "REQ-HAZARD-SINGLE-PATH-SOURCE",
2026-06-04T12:50:06.0392789Z       "title": "Single path/registry source of truth; no layout ambiguity (6.1)",
2026-06-04T12:50:06.0393242Z       "requiredStages": [
2026-06-04T12:50:06.0393659Z         "impl",
2026-06-04T12:50:06.0394064Z         "unit"
2026-06-04T12:50:06.0394455Z       ],
2026-06-04T12:50:06.0394874Z       "stages": {
2026-06-04T12:50:06.0395273Z         "doc": {
2026-06-04T12:50:06.0395724Z           "complete": false,
2026-06-04T12:50:06.0396152Z           "evidence": []
2026-06-04T12:50:06.0396557Z         },
2026-06-04T12:50:06.0396970Z         "impl": {
2026-06-04T12:50:06.0397412Z           "complete": true,
2026-06-04T12:50:06.0397842Z           "evidence": [
2026-06-04T12:50:06.0398369Z             {
2026-06-04T12:50:06.0399032Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.0399513Z               "line": 56
2026-06-04T12:50:06.0399926Z             },
2026-06-04T12:50:06.0400325Z             {
2026-06-04T12:50:06.0400970Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.0401402Z               "line": 63
2026-06-04T12:50:06.0401800Z             },
2026-06-04T12:50:06.0402206Z             {
2026-06-04T12:50:06.0402780Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0403210Z               "line": 33
2026-06-04T12:50:06.0403616Z             },
2026-06-04T12:50:06.0404010Z             {
2026-06-04T12:50:06.0404593Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0405013Z               "line": 61
2026-06-04T12:50:06.0405420Z             },
2026-06-04T12:50:06.0405825Z             {
2026-06-04T12:50:06.0406399Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0406843Z               "line": 70
2026-06-04T12:50:06.0410812Z             },
2026-06-04T12:50:06.0411362Z             {
2026-06-04T12:50:06.0411960Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0412409Z               "line": 79
2026-06-04T12:50:06.0412814Z             },
2026-06-04T12:50:06.0413206Z             {
2026-06-04T12:50:06.0413796Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0414221Z               "line": 88
2026-06-04T12:50:06.0414632Z             },
2026-06-04T12:50:06.0415032Z             {
2026-06-04T12:50:06.0415616Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0416044Z               "line": 97
2026-06-04T12:50:06.0416441Z             },
2026-06-04T12:50:06.0416842Z             {
2026-06-04T12:50:06.0417412Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0417853Z               "line": 105
2026-06-04T12:50:06.0418250Z             },
2026-06-04T12:50:06.0418652Z             {
2026-06-04T12:50:06.0419308Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0419759Z               "line": 114
2026-06-04T12:50:06.0420170Z             },
2026-06-04T12:50:06.0420564Z             {
2026-06-04T12:50:06.0421150Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0421585Z               "line": 123
2026-06-04T12:50:06.0421991Z             },
2026-06-04T12:50:06.0422396Z             {
2026-06-04T12:50:06.0422970Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0423413Z               "line": 130
2026-06-04T12:50:06.0423813Z             },
2026-06-04T12:50:06.0424218Z             {
2026-06-04T12:50:06.0424792Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0425237Z               "line": 137
2026-06-04T12:50:06.0425641Z             },
2026-06-04T12:50:06.0426032Z             {
2026-06-04T12:50:06.0426612Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0427056Z               "line": 145
2026-06-04T12:50:06.0427462Z             },
2026-06-04T12:50:06.0428094Z             {
2026-06-04T12:50:06.0428673Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0429118Z               "line": 154
2026-06-04T12:50:06.0429561Z             },
2026-06-04T12:50:06.0429975Z             {
2026-06-04T12:50:06.0430557Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0430997Z               "line": 221
2026-06-04T12:50:06.0431398Z             },
2026-06-04T12:50:06.0431803Z             {
2026-06-04T12:50:06.0432382Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0432812Z               "line": 233
2026-06-04T12:50:06.0433224Z             },
2026-06-04T12:50:06.0433618Z             {
2026-06-04T12:50:06.0434202Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0434632Z               "line": 320
2026-06-04T12:50:06.0435030Z             }
2026-06-04T12:50:06.0435433Z           ]
2026-06-04T12:50:06.0435958Z         },
2026-06-04T12:50:06.0436366Z         "int": {
2026-06-04T12:50:06.0436826Z           "complete": false,
2026-06-04T12:50:06.0437265Z           "evidence": []
2026-06-04T12:50:06.0437664Z         },
2026-06-04T12:50:06.0438082Z         "unit": {
2026-06-04T12:50:06.0438537Z           "complete": true,
2026-06-04T12:50:06.0438959Z           "evidence": [
2026-06-04T12:50:06.0439409Z             {
2026-06-04T12:50:06.0439992Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0440432Z               "line": 390
2026-06-04T12:50:06.0440836Z             },
2026-06-04T12:50:06.0441232Z             {
2026-06-04T12:50:06.0441813Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0442241Z               "line": 416
2026-06-04T12:50:06.0442646Z             },
2026-06-04T12:50:06.0443039Z             {
2026-06-04T12:50:06.0443615Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0444044Z               "line": 429
2026-06-04T12:50:06.0444454Z             },
2026-06-04T12:50:06.0444852Z             {
2026-06-04T12:50:06.0445436Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0445882Z               "line": 471
2026-06-04T12:50:06.0446281Z             }
2026-06-04T12:50:06.0446682Z           ]
2026-06-04T12:50:06.0447085Z         }
2026-06-04T12:50:06.0447474Z       }
2026-06-04T12:50:06.0447865Z     },
2026-06-04T12:50:06.0448250Z     {
2026-06-04T12:50:06.0448766Z       "id": "REQ-HAZARD-SOFT-CLEANUP",
2026-06-04T12:50:06.0449910Z       "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)",
2026-06-04T12:50:06.0450386Z       "requiredStages": [
2026-06-04T12:50:06.0450803Z         "impl",
2026-06-04T12:50:06.0451197Z         "unit"
2026-06-04T12:50:06.0451604Z       ],
2026-06-04T12:50:06.0452013Z       "stages": {
2026-06-04T12:50:06.0452420Z         "doc": {
2026-06-04T12:50:06.0452867Z           "complete": false,
2026-06-04T12:50:06.0453309Z           "evidence": []
2026-06-04T12:50:06.0453729Z         },
2026-06-04T12:50:06.0454141Z         "impl": {
2026-06-04T12:50:06.0454598Z           "complete": true,
2026-06-04T12:50:06.0455020Z           "evidence": [
2026-06-04T12:50:06.0455422Z             {
2026-06-04T12:50:06.0455973Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.0456405Z               "line": 107
2026-06-04T12:50:06.0456813Z             },
2026-06-04T12:50:06.0457204Z             {
2026-06-04T12:50:06.0457814Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.0458240Z               "line": 118
2026-06-04T12:50:06.0458642Z             }
2026-06-04T12:50:06.0459035Z           ]
2026-06-04T12:50:06.0459475Z         },
2026-06-04T12:50:06.0459892Z         "int": {
2026-06-04T12:50:06.0460336Z           "complete": false,
2026-06-04T12:50:06.0460773Z           "evidence": []
2026-06-04T12:50:06.0461210Z         },
2026-06-04T12:50:06.0461622Z         "unit": {
2026-06-04T12:50:06.0462059Z           "complete": true,
2026-06-04T12:50:06.0462507Z           "evidence": [
2026-06-04T12:50:06.0462911Z             {
2026-06-04T12:50:06.0463626Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.0464065Z               "line": 225
2026-06-04T12:50:06.0464466Z             },
2026-06-04T12:50:06.0464865Z             {
2026-06-04T12:50:06.0465463Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.0465900Z               "line": 345
2026-06-04T12:50:06.0466306Z             },
2026-06-04T12:50:06.0466700Z             {
2026-06-04T12:50:06.0467309Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.0467734Z               "line": 355
2026-06-04T12:50:06.0468140Z             }
2026-06-04T12:50:06.0468531Z           ]
2026-06-04T12:50:06.0468932Z         }
2026-06-04T12:50:06.0469381Z       }
2026-06-04T12:50:06.0469769Z     },
2026-06-04T12:50:06.0470164Z     {
2026-06-04T12:50:06.0470681Z       "id": "REQ-HAZARD-STALE-INDEX-LOCK",
2026-06-04T12:50:06.0471551Z       "title": "Sweep stale lockfiles on daemon boot (1.3)",
2026-06-04T12:50:06.0472018Z       "requiredStages": [],
2026-06-04T12:50:06.0472450Z       "stages": {
2026-06-04T12:50:06.0472859Z         "doc": {
2026-06-04T12:50:06.0473303Z           "complete": false,
2026-06-04T12:50:06.0473735Z           "evidence": []
2026-06-04T12:50:06.0474129Z         },
2026-06-04T12:50:06.0474543Z         "impl": {
2026-06-04T12:50:06.0474990Z           "complete": false,
2026-06-04T12:50:06.0475429Z           "evidence": []
2026-06-04T12:50:06.0475833Z         },
2026-06-04T12:50:06.0476229Z         "int": {
2026-06-04T12:50:06.0476683Z           "complete": false,
2026-06-04T12:50:06.0477109Z           "evidence": []
2026-06-04T12:50:06.0477509Z         },
2026-06-04T12:50:06.0477915Z         "unit": {
2026-06-04T12:50:06.0478364Z           "complete": false,
2026-06-04T12:50:06.0478803Z           "evidence": []
2026-06-04T12:50:06.0479242Z         }
2026-06-04T12:50:06.0479665Z       }
2026-06-04T12:50:06.0480106Z     },
2026-06-04T12:50:06.0480506Z     {
2026-06-04T12:50:06.0481096Z       "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL",
2026-06-04T12:50:06.0481995Z       "title": "Stale signoff sentinel does not kill a fresh start (3.2)",
2026-06-04T12:50:06.0482459Z       "requiredStages": [
2026-06-04T12:50:06.0482867Z         "impl",
2026-06-04T12:50:06.0483276Z         "unit"
2026-06-04T12:50:06.0483668Z       ],
2026-06-04T12:50:06.0484083Z       "stages": {
2026-06-04T12:50:06.0484479Z         "doc": {
2026-06-04T12:50:06.0488273Z           "complete": false,
2026-06-04T12:50:06.0488821Z           "evidence": []
2026-06-04T12:50:06.0489314Z         },
2026-06-04T12:50:06.0489736Z         "impl": {
2026-06-04T12:50:06.0490183Z           "complete": true,
2026-06-04T12:50:06.0490617Z           "evidence": [
2026-06-04T12:50:06.0491018Z             {
2026-06-04T12:50:06.0491651Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.0492086Z               "line": 424
2026-06-04T12:50:06.0492528Z             },
2026-06-04T12:50:06.0492929Z             {
2026-06-04T12:50:06.0493516Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:06.0493975Z               "line": 28
2026-06-04T12:50:06.0494370Z             }
2026-06-04T12:50:06.0494771Z           ]
2026-06-04T12:50:06.0495170Z         },
2026-06-04T12:50:06.0495573Z         "int": {
2026-06-04T12:50:06.0496025Z           "complete": false,
2026-06-04T12:50:06.0496454Z           "evidence": []
2026-06-04T12:50:06.0496853Z         },
2026-06-04T12:50:06.0497256Z         "unit": {
2026-06-04T12:50:06.0497695Z           "complete": true,
2026-06-04T12:50:06.0498131Z           "evidence": [
2026-06-04T12:50:06.0498533Z             {
2026-06-04T12:50:06.0499116Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:06.0499584Z               "line": 200
2026-06-04T12:50:06.0499988Z             }
2026-06-04T12:50:06.0500380Z           ]
2026-06-04T12:50:06.0500778Z         }
2026-06-04T12:50:06.0501177Z       }
2026-06-04T12:50:06.0501576Z     },
2026-06-04T12:50:06.0501966Z     {
2026-06-04T12:50:06.0502734Z       "id": "REQ-HAZARD-STDIN-SESSION-ID",
2026-06-04T12:50:06.0503441Z       "title": "Stdin session_id precedence over env (2.2)",
2026-06-04T12:50:06.0503906Z       "requiredStages": [],
2026-06-04T12:50:06.0504327Z       "stages": {
2026-06-04T12:50:06.0504734Z         "doc": {
2026-06-04T12:50:06.0505176Z           "complete": false,
2026-06-04T12:50:06.0505611Z           "evidence": []
2026-06-04T12:50:06.0506014Z         },
2026-06-04T12:50:06.0506434Z         "impl": {
2026-06-04T12:50:06.0506881Z           "complete": false,
2026-06-04T12:50:06.0507312Z           "evidence": []
2026-06-04T12:50:06.0507714Z         },
2026-06-04T12:50:06.0508126Z         "int": {
2026-06-04T12:50:06.0508608Z           "complete": false,
2026-06-04T12:50:06.0509046Z           "evidence": []
2026-06-04T12:50:06.0509499Z         },
2026-06-04T12:50:06.0509908Z         "unit": {
2026-06-04T12:50:06.0510358Z           "complete": false,
2026-06-04T12:50:06.0510998Z           "evidence": []
2026-06-04T12:50:06.0511393Z         }
2026-06-04T12:50:06.0511803Z       }
2026-06-04T12:50:06.0512185Z     },
2026-06-04T12:50:06.0512579Z     {
2026-06-04T12:50:06.0513114Z       "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT",
2026-06-04T12:50:06.0513893Z       "title": "Every harness/git subprocess has a timeout (5.3)",
2026-06-04T12:50:06.0514349Z       "requiredStages": [
2026-06-04T12:50:06.0514749Z         "impl",
2026-06-04T12:50:06.0515163Z         "unit"
2026-06-04T12:50:06.0515565Z       ],
2026-06-04T12:50:06.0516017Z       "stages": {
2026-06-04T12:50:06.0516437Z         "doc": {
2026-06-04T12:50:06.0516896Z           "complete": false,
2026-06-04T12:50:06.0517323Z           "evidence": []
2026-06-04T12:50:06.0517728Z         },
2026-06-04T12:50:06.0518140Z         "impl": {
2026-06-04T12:50:06.0518571Z           "complete": true,
2026-06-04T12:50:06.0519009Z           "evidence": [
2026-06-04T12:50:06.0519449Z             {
2026-06-04T12:50:06.0520046Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:50:06.0520493Z               "line": 19
2026-06-04T12:50:06.0520882Z             },
2026-06-04T12:50:06.0521282Z             {
2026-06-04T12:50:06.0521893Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.0522324Z               "line": 325
2026-06-04T12:50:06.0522718Z             },
2026-06-04T12:50:06.0523122Z             {
2026-06-04T12:50:06.0523738Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.0524164Z               "line": 361
2026-06-04T12:50:06.0524565Z             },
2026-06-04T12:50:06.0524969Z             {
2026-06-04T12:50:06.0525917Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:50:06.0526583Z               "line": 15
2026-06-04T12:50:06.0527891Z             },
2026-06-04T12:50:06.0529009Z             {
2026-06-04T12:50:06.0530441Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:50:06.0532044Z               "line": 48
2026-06-04T12:50:06.0533519Z             },
2026-06-04T12:50:06.0534731Z             {
2026-06-04T12:50:06.0536134Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:50:06.0537794Z               "line": 106
2026-06-04T12:50:06.0539208Z             }
2026-06-04T12:50:06.0540436Z           ]
2026-06-04T12:50:06.0541400Z         },
2026-06-04T12:50:06.0542374Z         "int": {
2026-06-04T12:50:06.0543531Z           "complete": false,
2026-06-04T12:50:06.0545013Z           "evidence": []
2026-06-04T12:50:06.0546152Z         },
2026-06-04T12:50:06.0547146Z         "unit": {
2026-06-04T12:50:06.0548369Z           "complete": true,
2026-06-04T12:50:06.0549864Z           "evidence": [
2026-06-04T12:50:06.0550991Z             {
2026-06-04T12:50:06.0552236Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.0553989Z               "line": 453
2026-06-04T12:50:06.0555259Z             },
2026-06-04T12:50:06.0556312Z             {
2026-06-04T12:50:06.0557537Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:50:06.0559140Z               "line": 149
2026-06-04T12:50:06.0560787Z             },
2026-06-04T12:50:06.0561748Z             {
2026-06-04T12:50:06.0562877Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:50:06.0564366Z               "line": 156
2026-06-04T12:50:06.0565456Z             }
2026-06-04T12:50:06.0566402Z           ]
2026-06-04T12:50:06.0567675Z         }
2026-06-04T12:50:06.0574364Z       }
2026-06-04T12:50:06.0575379Z     },
2026-06-04T12:50:06.0576320Z     {
2026-06-04T12:50:06.0577387Z       "id": "REQ-HAZARD-UNC-PATH-STRIP",
2026-06-04T12:50:06.0579291Z       "title": "Strip Windows UNC prefix on serialized paths (5.4)",
2026-06-04T12:50:06.0581116Z       "requiredStages": [
2026-06-04T12:50:06.0582274Z         "impl",
2026-06-04T12:50:06.0583285Z         "unit"
2026-06-04T12:50:06.0584272Z       ],
2026-06-04T12:50:06.0585218Z       "stages": {
2026-06-04T12:50:06.0586241Z         "doc": {
2026-06-04T12:50:06.0587675Z           "complete": false,
2026-06-04T12:50:06.0588903Z           "evidence": []
2026-06-04T12:50:06.0590116Z         },
2026-06-04T12:50:06.0591186Z         "impl": {
2026-06-04T12:50:06.0592252Z           "complete": true,
2026-06-04T12:50:06.0593485Z           "evidence": [
2026-06-04T12:50:06.0594584Z             {
2026-06-04T12:50:06.0595751Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:06.0597304Z               "line": 35
2026-06-04T12:50:06.0598422Z             }
2026-06-04T12:50:06.0599436Z           ]
2026-06-04T12:50:06.0600384Z         },
2026-06-04T12:50:06.0601336Z         "int": {
2026-06-04T12:50:06.0602400Z           "complete": false,
2026-06-04T12:50:06.0603631Z           "evidence": []
2026-06-04T12:50:06.0604753Z         },
2026-06-04T12:50:06.0605709Z         "unit": {
2026-06-04T12:50:06.0606778Z           "complete": true,
2026-06-04T12:50:06.0607970Z           "evidence": [
2026-06-04T12:50:06.0609063Z             {
2026-06-04T12:50:06.0610270Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:50:06.0611827Z               "line": 217
2026-06-04T12:50:06.0612972Z             }
2026-06-04T12:50:06.0613951Z           ]
2026-06-04T12:50:06.0614908Z         }
2026-06-04T12:50:06.0615847Z       }
2026-06-04T12:50:06.0616772Z     },
2026-06-04T12:50:06.0617698Z     {
2026-06-04T12:50:06.0618740Z       "id": "REQ-HAZARD-UPDATE-ROLLBACK",
2026-06-04T12:50:06.0621268Z       "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)",
2026-06-04T12:50:06.0623829Z       "requiredStages": [
2026-06-04T12:50:06.0624982Z         "impl",
2026-06-04T12:50:06.0625990Z         "unit"
2026-06-04T12:50:06.0626984Z       ],
2026-06-04T12:50:06.0627944Z       "stages": {
2026-06-04T12:50:06.0628974Z         "doc": {
2026-06-04T12:50:06.0630075Z           "complete": false,
2026-06-04T12:50:06.0631303Z           "evidence": []
2026-06-04T12:50:06.0632437Z         },
2026-06-04T12:50:06.0633402Z         "impl": {
2026-06-04T12:50:06.0634482Z           "complete": true,
2026-06-04T12:50:06.0635682Z           "evidence": [
2026-06-04T12:50:06.0636792Z             {
2026-06-04T12:50:06.0638017Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.0639642Z               "line": 256
2026-06-04T12:50:06.0640773Z             },
2026-06-04T12:50:06.0641767Z             {
2026-06-04T12:50:06.0642953Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.0644507Z               "line": 221
2026-06-04T12:50:06.0645629Z             },
2026-06-04T12:50:06.0646619Z             {
2026-06-04T12:50:06.0647806Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.0649390Z               "line": 150
2026-06-04T12:50:06.0650516Z             }
2026-06-04T12:50:06.0651490Z           ]
2026-06-04T12:50:06.0652428Z         },
2026-06-04T12:50:06.0653381Z         "int": {
2026-06-04T12:50:06.0654433Z           "complete": false,
2026-06-04T12:50:06.0655656Z           "evidence": []
2026-06-04T12:50:06.0656797Z         },
2026-06-04T12:50:06.0657768Z         "unit": {
2026-06-04T12:50:06.0659071Z           "complete": true,
2026-06-04T12:50:06.0660325Z           "evidence": [
2026-06-04T12:50:06.0661419Z             {
2026-06-04T12:50:06.0662596Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.0664164Z               "line": 477
2026-06-04T12:50:06.0665293Z             },
2026-06-04T12:50:06.0666282Z             {
2026-06-04T12:50:06.0667475Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.0669028Z               "line": 488
2026-06-04T12:50:06.0670185Z             },
2026-06-04T12:50:06.0675604Z             {
2026-06-04T12:50:06.0676862Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.0678693Z               "line": 504
2026-06-04T12:50:06.0680086Z             },
2026-06-04T12:50:06.0681201Z             {
2026-06-04T12:50:06.0682479Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.0684467Z               "line": 518
2026-06-04T12:50:06.0685664Z             },
2026-06-04T12:50:06.0686728Z             {
2026-06-04T12:50:06.0688054Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:50:06.0690247Z               "line": 268
2026-06-04T12:50:06.0691404Z             }
2026-06-04T12:50:06.0692383Z           ]
2026-06-04T12:50:06.0693341Z         }
2026-06-04T12:50:06.0694298Z       }
2026-06-04T12:50:06.0695224Z     },
2026-06-04T12:50:06.0697022Z     {
2026-06-04T12:50:06.0698438Z       "id": "REQ-HAZARD-WAN-ORIGIN-AUTH",
2026-06-04T12:50:06.0704378Z       "title": "WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)",
2026-06-04T12:50:06.0709988Z       "requiredStages": [
2026-06-04T12:50:06.0711158Z         "doc",
2026-06-04T12:50:06.0712216Z         "impl",
2026-06-04T12:50:06.0713220Z         "unit"
2026-06-04T12:50:06.0714206Z       ],
2026-06-04T12:50:06.0715180Z       "stages": {
2026-06-04T12:50:06.0716211Z         "doc": {
2026-06-04T12:50:06.0717266Z           "complete": true,
2026-06-04T12:50:06.0718472Z           "evidence": [
2026-06-04T12:50:06.0719598Z             {
2026-06-04T12:50:06.0720713Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:50:06.0722181Z               "line": 259
2026-06-04T12:50:06.0723318Z             }
2026-06-04T12:50:06.0724291Z           ]
2026-06-04T12:50:06.0725251Z         },
2026-06-04T12:50:06.0726218Z         "impl": {
2026-06-04T12:50:06.0727281Z           "complete": true,
2026-06-04T12:50:06.0728472Z           "evidence": [
2026-06-04T12:50:06.0729613Z             {
2026-06-04T12:50:06.0730804Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:50:06.0732369Z               "line": 85
2026-06-04T12:50:06.0733492Z             },
2026-06-04T12:50:06.0734485Z             {
2026-06-04T12:50:06.0735689Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:50:06.0737248Z               "line": 99
2026-06-04T12:50:06.0738377Z             },
2026-06-04T12:50:06.0739396Z             {
2026-06-04T12:50:06.0740602Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.0742178Z               "line": 53
2026-06-04T12:50:06.0743302Z             },
2026-06-04T12:50:06.0744294Z             {
2026-06-04T12:50:06.0745495Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.0747074Z               "line": 89
2026-06-04T12:50:06.0748204Z             },
2026-06-04T12:50:06.0749229Z             {
2026-06-04T12:50:06.0750454Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.0752047Z               "line": 29
2026-06-04T12:50:06.0753169Z             },
2026-06-04T12:50:06.0754157Z             {
2026-06-04T12:50:06.0755352Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.0756950Z               "line": 75
2026-06-04T12:50:06.0758070Z             },
2026-06-04T12:50:06.0759397Z             {
2026-06-04T12:50:06.0760679Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.0762305Z               "line": 121
2026-06-04T12:50:06.0763441Z             },
2026-06-04T12:50:06.0764436Z             {
2026-06-04T12:50:06.0765572Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.0767078Z               "line": 40
2026-06-04T12:50:06.0768186Z             },
2026-06-04T12:50:06.0769217Z             {
2026-06-04T12:50:06.0770369Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.0771879Z               "line": 161
2026-06-04T12:50:06.0773021Z             },
2026-06-04T12:50:06.0774010Z             {
2026-06-04T12:50:06.0775153Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T12:50:06.0776653Z               "line": 70
2026-06-04T12:50:06.0777771Z             },
2026-06-04T12:50:06.0778771Z             {
2026-06-04T12:50:06.0780122Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:50:06.0781644Z               "line": 210
2026-06-04T12:50:06.0782776Z             },
2026-06-04T12:50:06.0788495Z             {
2026-06-04T12:50:06.0789934Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:50:06.0791421Z               "line": 37
2026-06-04T12:50:06.0792502Z             },
2026-06-04T12:50:06.0793453Z             {
2026-06-04T12:50:06.0794597Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:50:06.0796112Z               "line": 38
2026-06-04T12:50:06.0797185Z             },
2026-06-04T12:50:06.0798142Z             {
2026-06-04T12:50:06.0799330Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:50:06.0800827Z               "line": 36
2026-06-04T12:50:06.0801900Z             },
2026-06-04T12:50:06.0802855Z             {
2026-06-04T12:50:06.0803969Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:50:06.0805494Z               "line": 40
2026-06-04T12:50:06.0806570Z             }
2026-06-04T12:50:06.0807540Z           ]
2026-06-04T12:50:06.0808440Z         },
2026-06-04T12:50:06.0809377Z         "int": {
2026-06-04T12:50:06.0810378Z           "complete": false,
2026-06-04T12:50:06.0811557Z           "evidence": []
2026-06-04T12:50:06.0812633Z         },
2026-06-04T12:50:06.0813537Z         "unit": {
2026-06-04T12:50:06.0814552Z           "complete": true,
2026-06-04T12:50:06.0815702Z           "evidence": [
2026-06-04T12:50:06.0816768Z             {
2026-06-04T12:50:06.0817924Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.0819504Z               "line": 179
2026-06-04T12:50:06.0820591Z             },
2026-06-04T12:50:06.0821530Z             {
2026-06-04T12:50:06.0822710Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T12:50:06.0824272Z               "line": 117
2026-06-04T12:50:06.0825361Z             },
2026-06-04T12:50:06.0826313Z             {
2026-06-04T12:50:06.0827515Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:50:06.0829100Z               "line": 344
2026-06-04T12:50:06.0830223Z             },
2026-06-04T12:50:06.0831166Z             {
2026-06-04T12:50:06.0832300Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:50:06.0833795Z               "line": 204
2026-06-04T12:50:06.0834869Z             },
2026-06-04T12:50:06.0835823Z             {
2026-06-04T12:50:06.0836972Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T12:50:06.0838509Z               "line": 147
2026-06-04T12:50:06.0839641Z             },
2026-06-04T12:50:06.0840596Z             {
2026-06-04T12:50:06.0841724Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:50:06.0843222Z               "line": 106
2026-06-04T12:50:06.0844311Z             },
2026-06-04T12:50:06.0845258Z             {
2026-06-04T12:50:06.0846387Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:50:06.0847882Z               "line": 142
2026-06-04T12:50:06.0848973Z             },
2026-06-04T12:50:06.0850272Z             {
2026-06-04T12:50:06.0851422Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:50:06.0852941Z               "line": 139
2026-06-04T12:50:06.0854031Z             },
2026-06-04T12:50:06.0854980Z             {
2026-06-04T12:50:06.0856127Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:50:06.0857635Z               "line": 126
2026-06-04T12:50:06.0858741Z             },
2026-06-04T12:50:06.0859724Z             {
2026-06-04T12:50:06.0860840Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:50:06.0862326Z               "line": 135
2026-06-04T12:50:06.0863415Z             }
2026-06-04T12:50:06.0864356Z           ]
2026-06-04T12:50:06.0865286Z         }
2026-06-04T12:50:06.0866181Z       }
2026-06-04T12:50:06.0867057Z     },
2026-06-04T12:50:06.0867935Z     {
2026-06-04T12:50:06.0868991Z       "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE",
2026-06-04T12:50:06.0871133Z       "title": "Windows PID-recycling false positives guarded (5.1)",
2026-06-04T12:50:06.0872956Z       "requiredStages": [
2026-06-04T12:50:06.0874078Z         "impl",
2026-06-04T12:50:06.0875045Z         "unit"
2026-06-04T12:50:06.0875998Z       ],
2026-06-04T12:50:06.0876915Z       "stages": {
2026-06-04T12:50:06.0877901Z         "doc": {
2026-06-04T12:50:06.0878929Z           "complete": false,
2026-06-04T12:50:06.0880162Z           "evidence": []
2026-06-04T12:50:06.0881246Z         },
2026-06-04T12:50:06.0882159Z         "impl": {
2026-06-04T12:50:06.0887109Z           "complete": true,
2026-06-04T12:50:06.0888392Z           "evidence": [
2026-06-04T12:50:06.0889538Z             {
2026-06-04T12:50:06.0890663Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.0892143Z               "line": 95
2026-06-04T12:50:06.0893213Z             },
2026-06-04T12:50:06.0894157Z             {
2026-06-04T12:50:06.0895263Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.0896790Z               "line": 96
2026-06-04T12:50:06.0897859Z             }
2026-06-04T12:50:06.0898808Z           ]
2026-06-04T12:50:06.0899758Z         },
2026-06-04T12:50:06.0900671Z         "int": {
2026-06-04T12:50:06.0901690Z           "complete": false,
2026-06-04T12:50:06.0902874Z           "evidence": []
2026-06-04T12:50:06.0904221Z         },
2026-06-04T12:50:06.0905398Z         "unit": {
2026-06-04T12:50:06.0906440Z           "complete": true,
2026-06-04T12:50:06.0907605Z           "evidence": [
2026-06-04T12:50:06.0908667Z             {
2026-06-04T12:50:06.0909848Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.0911341Z               "line": 250
2026-06-04T12:50:06.0912434Z             },
2026-06-04T12:50:06.0913385Z             {
2026-06-04T12:50:06.0914493Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:50:06.0915976Z               "line": 139
2026-06-04T12:50:06.0917065Z             },
2026-06-04T12:50:06.0918025Z             {
2026-06-04T12:50:06.0919195Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.0920696Z               "line": 384
2026-06-04T12:50:06.0921783Z             },
2026-06-04T12:50:06.0922737Z             {
2026-06-04T12:50:06.0923851Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.0925327Z               "line": 414
2026-06-04T12:50:06.0926419Z             }
2026-06-04T12:50:06.0927365Z           ]
2026-06-04T12:50:06.0928285Z         }
2026-06-04T12:50:06.0929217Z       }
2026-06-04T12:50:06.0930105Z     },
2026-06-04T12:50:06.0930996Z     {
2026-06-04T12:50:06.0931988Z       "id": "REQ-HAZARD-WORKER-PATH",
2026-06-04T12:50:06.0933856Z       "title": "Single source of truth for Worker/Psyche perch location (1.5)",
2026-06-04T12:50:06.0935906Z       "requiredStages": [
2026-06-04T12:50:06.0937070Z         "impl",
2026-06-04T12:50:06.0938047Z         "unit"
2026-06-04T12:50:06.0939005Z       ],
2026-06-04T12:50:06.0939958Z       "stages": {
2026-06-04T12:50:06.0940967Z         "doc": {
2026-06-04T12:50:06.0941987Z           "complete": false,
2026-06-04T12:50:06.0943484Z           "evidence": []
2026-06-04T12:50:06.0944564Z         },
2026-06-04T12:50:06.0945488Z         "impl": {
2026-06-04T12:50:06.0946522Z           "complete": true,
2026-06-04T12:50:06.0947691Z           "evidence": [
2026-06-04T12:50:06.0948750Z             {
2026-06-04T12:50:06.0949915Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0951403Z               "line": 177
2026-06-04T12:50:06.0952496Z             },
2026-06-04T12:50:06.0953447Z             {
2026-06-04T12:50:06.0954563Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0956047Z               "line": 222
2026-06-04T12:50:06.0957139Z             },
2026-06-04T12:50:06.0958082Z             {
2026-06-04T12:50:06.0959230Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0960722Z               "line": 234
2026-06-04T12:50:06.0961818Z             }
2026-06-04T12:50:06.0962929Z           ]
2026-06-04T12:50:06.0963842Z         },
2026-06-04T12:50:06.0964781Z         "int": {
2026-06-04T12:50:06.0965809Z           "complete": false,
2026-06-04T12:50:06.0967014Z           "evidence": []
2026-06-04T12:50:06.0968102Z         },
2026-06-04T12:50:06.0969026Z         "unit": {
2026-06-04T12:50:06.0970098Z           "complete": true,
2026-06-04T12:50:06.0971260Z           "evidence": [
2026-06-04T12:50:06.0972315Z             {
2026-06-04T12:50:06.0973431Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0974915Z               "line": 370
2026-06-04T12:50:06.0976026Z             },
2026-06-04T12:50:06.0976979Z             {
2026-06-04T12:50:06.0978090Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.0979607Z               "line": 399
2026-06-04T12:50:06.0984847Z             }
2026-06-04T12:50:06.0985859Z           ]
2026-06-04T12:50:06.0986775Z         }
2026-06-04T12:50:06.0987672Z       }
2026-06-04T12:50:06.0988603Z     },
2026-06-04T12:50:06.0989582Z     {
2026-06-04T12:50:06.0990505Z       "id": "REQ-INFRA-1",
2026-06-04T12:50:06.0992200Z       "title": "GitHub issue tracking for v1; tangled.org as migration target",
2026-06-04T12:50:06.0994171Z       "requiredStages": [],
2026-06-04T12:50:06.0995325Z       "stages": {
2026-06-04T12:50:06.0996315Z         "doc": {
2026-06-04T12:50:06.0997335Z           "complete": false,
2026-06-04T12:50:06.0998522Z           "evidence": []
2026-06-04T12:50:06.0999670Z         },
2026-06-04T12:50:06.1000610Z         "impl": {
2026-06-04T12:50:06.1001636Z           "complete": false,
2026-06-04T12:50:06.1002826Z           "evidence": []
2026-06-04T12:50:06.1003913Z         },
2026-06-04T12:50:06.1004824Z         "int": {
2026-06-04T12:50:06.1005840Z           "complete": false,
2026-06-04T12:50:06.1007013Z           "evidence": []
2026-06-04T12:50:06.1008099Z         },
2026-06-04T12:50:06.1009023Z         "unit": {
2026-06-04T12:50:06.1010446Z           "complete": false,
2026-06-04T12:50:06.1011657Z           "evidence": []
2026-06-04T12:50:06.1012736Z         }
2026-06-04T12:50:06.1013644Z       }
2026-06-04T12:50:06.1014524Z     },
2026-06-04T12:50:06.1015405Z     {
2026-06-04T12:50:06.1016336Z       "id": "REQ-INST-1",
2026-06-04T12:50:06.1017897Z       "title": "endpoint ID vs instance split (adapter-agnostic ID)",
2026-06-04T12:50:06.1019776Z       "requiredStages": [],
2026-06-04T12:50:06.1020932Z       "stages": {
2026-06-04T12:50:06.1021913Z         "doc": {
2026-06-04T12:50:06.1022938Z           "complete": false,
2026-06-04T12:50:06.1024122Z           "evidence": []
2026-06-04T12:50:06.1025209Z         },
2026-06-04T12:50:06.1026123Z         "impl": {
2026-06-04T12:50:06.1027153Z           "complete": false,
2026-06-04T12:50:06.1028335Z           "evidence": []
2026-06-04T12:50:06.1029464Z         },
2026-06-04T12:50:06.1030385Z         "int": {
2026-06-04T12:50:06.1031416Z           "complete": false,
2026-06-04T12:50:06.1032594Z           "evidence": []
2026-06-04T12:50:06.1033694Z         },
2026-06-04T12:50:06.1034609Z         "unit": {
2026-06-04T12:50:06.1035921Z           "complete": false,
2026-06-04T12:50:06.1037103Z           "evidence": []
2026-06-04T12:50:06.1038195Z         }
2026-06-04T12:50:06.1039090Z       }
2026-06-04T12:50:06.1040015Z     },
2026-06-04T12:50:06.1040907Z     {
2026-06-04T12:50:06.1041837Z       "id": "REQ-INST-10",
2026-06-04T12:50:06.1043696Z       "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification",
2026-06-04T12:50:06.1045869Z       "requiredStages": [
2026-06-04T12:50:06.1047001Z         "impl",
2026-06-04T12:50:06.1047965Z         "unit"
2026-06-04T12:50:06.1048917Z       ],
2026-06-04T12:50:06.1049850Z       "stages": {
2026-06-04T12:50:06.1050834Z         "doc": {
2026-06-04T12:50:06.1051854Z           "complete": false,
2026-06-04T12:50:06.1053040Z           "evidence": []
2026-06-04T12:50:06.1054117Z         },
2026-06-04T12:50:06.1055036Z         "impl": {
2026-06-04T12:50:06.1056060Z           "complete": true,
2026-06-04T12:50:06.1057402Z           "evidence": [
2026-06-04T12:50:06.1058466Z             {
2026-06-04T12:50:06.1059668Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1061203Z               "line": 358
2026-06-04T12:50:06.1062288Z             },
2026-06-04T12:50:06.1063234Z             {
2026-06-04T12:50:06.1064393Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1065930Z               "line": 413
2026-06-04T12:50:06.1067020Z             },
2026-06-04T12:50:06.1067976Z             {
2026-06-04T12:50:06.1069073Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:50:06.1070602Z               "line": 13
2026-06-04T12:50:06.1071692Z             },
2026-06-04T12:50:06.1072641Z             {
2026-06-04T12:50:06.1073751Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:50:06.1075227Z               "line": 67
2026-06-04T12:50:06.1076300Z             },
2026-06-04T12:50:06.1081354Z             {
2026-06-04T12:50:06.1082584Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:50:06.1084089Z               "line": 18
2026-06-04T12:50:06.1085198Z             }
2026-06-04T12:50:06.1086171Z           ]
2026-06-04T12:50:06.1087105Z         },
2026-06-04T12:50:06.1088035Z         "int": {
2026-06-04T12:50:06.1089091Z           "complete": false,
2026-06-04T12:50:06.1091518Z           "evidence": []
2026-06-04T12:50:06.1093019Z         },
2026-06-04T12:50:06.1094260Z         "unit": {
2026-06-04T12:50:06.1095521Z           "complete": true,
2026-06-04T12:50:06.1097343Z           "evidence": [
2026-06-04T12:50:06.1098550Z             {
2026-06-04T12:50:06.1100231Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1101943Z               "line": 557
2026-06-04T12:50:06.1103136Z             },
2026-06-04T12:50:06.1104212Z             {
2026-06-04T12:50:06.1105578Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1107153Z               "line": 585
2026-06-04T12:50:06.1108333Z             },
2026-06-04T12:50:06.1109353Z             {
2026-06-04T12:50:06.1110571Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1112137Z               "line": 593
2026-06-04T12:50:06.1113262Z             },
2026-06-04T12:50:06.1114234Z             {
2026-06-04T12:50:06.1115410Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1116979Z               "line": 606
2026-06-04T12:50:06.1118110Z             },
2026-06-04T12:50:06.1119091Z             {
2026-06-04T12:50:06.1120315Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1121879Z               "line": 619
2026-06-04T12:50:06.1123005Z             },
2026-06-04T12:50:06.1123986Z             {
2026-06-04T12:50:06.1125170Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1126739Z               "line": 635
2026-06-04T12:50:06.1127854Z             },
2026-06-04T12:50:06.1128840Z             {
2026-06-04T12:50:06.1130185Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1132285Z               "line": 864
2026-06-04T12:50:06.1133413Z             },
2026-06-04T12:50:06.1134392Z             {
2026-06-04T12:50:06.1135541Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:50:06.1137054Z               "line": 121
2026-06-04T12:50:06.1138178Z             },
2026-06-04T12:50:06.1139229Z             {
2026-06-04T12:50:06.1140383Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:50:06.1141887Z               "line": 142
2026-06-04T12:50:06.1143014Z             },
2026-06-04T12:50:06.1143997Z             {
2026-06-04T12:50:06.1145146Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:50:06.1146656Z               "line": 150
2026-06-04T12:50:06.1147779Z             },
2026-06-04T12:50:06.1148777Z             {
2026-06-04T12:50:06.1149958Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:50:06.1151457Z               "line": 158
2026-06-04T12:50:06.1152761Z             }
2026-06-04T12:50:06.1153735Z           ]
2026-06-04T12:50:06.1154701Z         }
2026-06-04T12:50:06.1155635Z       }
2026-06-04T12:50:06.1156058Z     },
2026-06-04T12:50:06.1156470Z     {
2026-06-04T12:50:06.1156937Z       "id": "REQ-INST-11",
2026-06-04T12:50:06.1158136Z       "title": "spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)",
2026-06-04T12:50:06.1158631Z       "requiredStages": [
2026-06-04T12:50:06.1159072Z         "impl",
2026-06-04T12:50:06.1159540Z         "unit"
2026-06-04T12:50:06.1159961Z       ],
2026-06-04T12:50:06.1160393Z       "stages": {
2026-06-04T12:50:06.1160822Z         "doc": {
2026-06-04T12:50:06.1161296Z           "complete": false,
2026-06-04T12:50:06.1161748Z           "evidence": []
2026-06-04T12:50:06.1162178Z         },
2026-06-04T12:50:06.1162604Z         "impl": {
2026-06-04T12:50:06.1163079Z           "complete": true,
2026-06-04T12:50:06.1163524Z           "evidence": [
2026-06-04T12:50:06.1163964Z             {
2026-06-04T12:50:06.1164610Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1165073Z               "line": 260
2026-06-04T12:50:06.1165504Z             },
2026-06-04T12:50:06.1165918Z             {
2026-06-04T12:50:06.1166595Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.1167049Z               "line": 243
2026-06-04T12:50:06.1167471Z             },
2026-06-04T12:50:06.1167900Z             {
2026-06-04T12:50:06.1168498Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:50:06.1168954Z               "line": 59
2026-06-04T12:50:06.1169416Z             },
2026-06-04T12:50:06.1169843Z             {
2026-06-04T12:50:06.1170381Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1170839Z               "line": 915
2026-06-04T12:50:06.1171269Z             },
2026-06-04T12:50:06.1171682Z             {
2026-06-04T12:50:06.1172225Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1172692Z               "line": 1020
2026-06-04T12:50:06.1173122Z             }
2026-06-04T12:50:06.1173547Z           ]
2026-06-04T12:50:06.1173972Z         },
2026-06-04T12:50:06.1180182Z         "int": {
2026-06-04T12:50:06.1180792Z           "complete": false,
2026-06-04T12:50:06.1181265Z           "evidence": []
2026-06-04T12:50:06.1181672Z         },
2026-06-04T12:50:06.1182086Z         "unit": {
2026-06-04T12:50:06.1182538Z           "complete": true,
2026-06-04T12:50:06.1182978Z           "evidence": [
2026-06-04T12:50:06.1183387Z             {
2026-06-04T12:50:06.1184010Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1184452Z               "line": 728
2026-06-04T12:50:06.1184853Z             },
2026-06-04T12:50:06.1185258Z             {
2026-06-04T12:50:06.1185876Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1186316Z               "line": 751
2026-06-04T12:50:06.1186727Z             },
2026-06-04T12:50:06.1187126Z             {
2026-06-04T12:50:06.1187823Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.1188593Z               "line": 356
2026-06-04T12:50:06.1188996Z             },
2026-06-04T12:50:06.1189447Z             {
2026-06-04T12:50:06.1190043Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:50:06.1190475Z               "line": 156
2026-06-04T12:50:06.1190872Z             },
2026-06-04T12:50:06.1191278Z             {
2026-06-04T12:50:06.1191856Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:50:06.1192298Z               "line": 177
2026-06-04T12:50:06.1192695Z             },
2026-06-04T12:50:06.1193103Z             {
2026-06-04T12:50:06.1193690Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:50:06.1194116Z               "line": 209
2026-06-04T12:50:06.1194522Z             },
2026-06-04T12:50:06.1194919Z             {
2026-06-04T12:50:06.1195440Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1195875Z               "line": 1113
2026-06-04T12:50:06.1196447Z             }
2026-06-04T12:50:06.1196861Z           ]
2026-06-04T12:50:06.1197270Z         }
2026-06-04T12:50:06.1197676Z       }
2026-06-04T12:50:06.1198068Z     },
2026-06-04T12:50:06.1198470Z     {
2026-06-04T12:50:06.1198915Z       "id": "REQ-INST-12",
2026-06-04T12:50:06.1200623Z       "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync",
2026-06-04T12:50:06.1201092Z       "requiredStages": [
2026-06-04T12:50:06.1201499Z         "impl",
2026-06-04T12:50:06.1201912Z         "unit"
2026-06-04T12:50:06.1202305Z       ],
2026-06-04T12:50:06.1202723Z       "stages": {
2026-06-04T12:50:06.1203124Z         "doc": {
2026-06-04T12:50:06.1203579Z           "complete": false,
2026-06-04T12:50:06.1204021Z           "evidence": []
2026-06-04T12:50:06.1204415Z         },
2026-06-04T12:50:06.1204829Z         "impl": {
2026-06-04T12:50:06.1205271Z           "complete": true,
2026-06-04T12:50:06.1205705Z           "evidence": [
2026-06-04T12:50:06.1206112Z             {
2026-06-04T12:50:06.1206737Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1207192Z               "line": 312
2026-06-04T12:50:06.1207596Z             },
2026-06-04T12:50:06.1208004Z             {
2026-06-04T12:50:06.1208615Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1209054Z               "line": 369
2026-06-04T12:50:06.1209485Z             },
2026-06-04T12:50:06.1209891Z             {
2026-06-04T12:50:06.1210516Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1210945Z               "line": 427
2026-06-04T12:50:06.1211354Z             },
2026-06-04T12:50:06.1211748Z             {
2026-06-04T12:50:06.1212341Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.1212777Z               "line": 87
2026-06-04T12:50:06.1213180Z             },
2026-06-04T12:50:06.1213584Z             {
2026-06-04T12:50:06.1214165Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.1214618Z               "line": 216
2026-06-04T12:50:06.1215037Z             },
2026-06-04T12:50:06.1215445Z             {
2026-06-04T12:50:06.1216072Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:50:06.1216500Z               "line": 132
2026-06-04T12:50:06.1216906Z             }
2026-06-04T12:50:06.1217302Z           ]
2026-06-04T12:50:06.1217703Z         },
2026-06-04T12:50:06.1218111Z         "int": {
2026-06-04T12:50:06.1218561Z           "complete": false,
2026-06-04T12:50:06.1218997Z           "evidence": []
2026-06-04T12:50:06.1219437Z         },
2026-06-04T12:50:06.1219857Z         "unit": {
2026-06-04T12:50:06.1220300Z           "complete": true,
2026-06-04T12:50:06.1220731Z           "evidence": [
2026-06-04T12:50:06.1221124Z             {
2026-06-04T12:50:06.1221743Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1222178Z               "line": 786
2026-06-04T12:50:06.1222572Z             },
2026-06-04T12:50:06.1222991Z             {
2026-06-04T12:50:06.1223608Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1224415Z               "line": 803
2026-06-04T12:50:06.1224814Z             },
2026-06-04T12:50:06.1225217Z             {
2026-06-04T12:50:06.1225838Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1226267Z               "line": 834
2026-06-04T12:50:06.1226676Z             },
2026-06-04T12:50:06.1227074Z             {
2026-06-04T12:50:06.1227672Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.1228101Z               "line": 350
2026-06-04T12:50:06.1228510Z             },
2026-06-04T12:50:06.1228917Z             {
2026-06-04T12:50:06.1229591Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:50:06.1230031Z               "line": 169
2026-06-04T12:50:06.1230431Z             },
2026-06-04T12:50:06.1230828Z             {
2026-06-04T12:50:06.1231437Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:50:06.1232033Z               "line": 181
2026-06-04T12:50:06.1232457Z             },
2026-06-04T12:50:06.1232851Z             {
2026-06-04T12:50:06.1233477Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:50:06.1233906Z               "line": 198
2026-06-04T12:50:06.1234314Z             }
2026-06-04T12:50:06.1234713Z           ]
2026-06-04T12:50:06.1235117Z         }
2026-06-04T12:50:06.1235522Z       }
2026-06-04T12:50:06.1235911Z     },
2026-06-04T12:50:06.1236306Z     {
2026-06-04T12:50:06.1236744Z       "id": "REQ-INST-13",
2026-06-04T12:50:06.1237720Z       "title": "Subnet-exclusive sync + per-endpoint subnet-membership list",
2026-06-04T12:50:06.1238178Z       "requiredStages": [
2026-06-04T12:50:06.1238603Z         "impl",
2026-06-04T12:50:06.1239022Z         "unit"
2026-06-04T12:50:06.1239459Z       ],
2026-06-04T12:50:06.1239892Z       "stages": {
2026-06-04T12:50:06.1240296Z         "doc": {
2026-06-04T12:50:06.1240745Z           "complete": false,
2026-06-04T12:50:06.1241184Z           "evidence": []
2026-06-04T12:50:06.1241591Z         },
2026-06-04T12:50:06.1242008Z         "impl": {
2026-06-04T12:50:06.1242450Z           "complete": true,
2026-06-04T12:50:06.1242882Z           "evidence": [
2026-06-04T12:50:06.1243285Z             {
2026-06-04T12:50:06.1243870Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1244297Z               "line": 94
2026-06-04T12:50:06.1244704Z             },
2026-06-04T12:50:06.1245109Z             {
2026-06-04T12:50:06.1245728Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:50:06.1246169Z               "line": 155
2026-06-04T12:50:06.1246568Z             }
2026-06-04T12:50:06.1246976Z           ]
2026-06-04T12:50:06.1247375Z         },
2026-06-04T12:50:06.1247780Z         "int": {
2026-06-04T12:50:06.1248239Z           "complete": false,
2026-06-04T12:50:06.1248673Z           "evidence": []
2026-06-04T12:50:06.1249085Z         },
2026-06-04T12:50:06.1249552Z         "unit": {
2026-06-04T12:50:06.1250006Z           "complete": true,
2026-06-04T12:50:06.1250447Z           "evidence": [
2026-06-04T12:50:06.1250855Z             {
2026-06-04T12:50:06.1251489Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:50:06.1251922Z               "line": 221
2026-06-04T12:50:06.1252332Z             },
2026-06-04T12:50:06.1252725Z             {
2026-06-04T12:50:06.1253352Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:50:06.1253779Z               "line": 233
2026-06-04T12:50:06.1254184Z             }
2026-06-04T12:50:06.1254591Z           ]
2026-06-04T12:50:06.1254986Z         }
2026-06-04T12:50:06.1255390Z       }
2026-06-04T12:50:06.1259761Z     },
2026-06-04T12:50:06.1260277Z     {
2026-06-04T12:50:06.1260741Z       "id": "REQ-INST-14",
2026-06-04T12:50:06.1262955Z       "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated",
2026-06-04T12:50:06.1263490Z       "requiredStages": [],
2026-06-04T12:50:06.1263926Z       "stages": {
2026-06-04T12:50:06.1264592Z         "doc": {
2026-06-04T12:50:06.1265045Z           "complete": false,
2026-06-04T12:50:06.1265487Z           "evidence": []
2026-06-04T12:50:06.1265880Z         },
2026-06-04T12:50:06.1266296Z         "impl": {
2026-06-04T12:50:06.1266749Z           "complete": false,
2026-06-04T12:50:06.1267179Z           "evidence": []
2026-06-04T12:50:06.1267585Z         },
2026-06-04T12:50:06.1267993Z         "int": {
2026-06-04T12:50:06.1268445Z           "complete": false,
2026-06-04T12:50:06.1268878Z           "evidence": []
2026-06-04T12:50:06.1269346Z         },
2026-06-04T12:50:06.1269760Z         "unit": {
2026-06-04T12:50:06.1270210Z           "complete": false,
2026-06-04T12:50:06.1270651Z           "evidence": []
2026-06-04T12:50:06.1271044Z         }
2026-06-04T12:50:06.1271445Z       }
2026-06-04T12:50:06.1271837Z     },
2026-06-04T12:50:06.1272240Z     {
2026-06-04T12:50:06.1272832Z       "id": "REQ-INST-15",
2026-06-04T12:50:06.1277233Z       "title": "Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)",
2026-06-04T12:50:06.1277745Z       "requiredStages": [],
2026-06-04T12:50:06.1278186Z       "stages": {
2026-06-04T12:50:06.1278621Z         "doc": {
2026-06-04T12:50:06.1279100Z           "complete": false,
2026-06-04T12:50:06.1279584Z           "evidence": []
2026-06-04T12:50:06.1280007Z         },
2026-06-04T12:50:06.1280431Z         "impl": {
2026-06-04T12:50:06.1280902Z           "complete": false,
2026-06-04T12:50:06.1281349Z           "evidence": []
2026-06-04T12:50:06.1281775Z         },
2026-06-04T12:50:06.1282201Z         "int": {
2026-06-04T12:50:06.1282657Z           "complete": false,
2026-06-04T12:50:06.1283111Z           "evidence": []
2026-06-04T12:50:06.1283537Z         },
2026-06-04T12:50:06.1283953Z         "unit": {
2026-06-04T12:50:06.1284403Z           "complete": false,
2026-06-04T12:50:06.1284841Z           "evidence": []
2026-06-04T12:50:06.1285240Z         }
2026-06-04T12:50:06.1285630Z       }
2026-06-04T12:50:06.1286029Z     },
2026-06-04T12:50:06.1286418Z     {
2026-06-04T12:50:06.1286857Z       "id": "REQ-INST-2",
2026-06-04T12:50:06.1287453Z       "title": "Per-node files, synced Psyche mind",
2026-06-04T12:50:06.1287914Z       "requiredStages": [
2026-06-04T12:50:06.1288320Z         "impl",
2026-06-04T12:50:06.1288717Z         "unit"
2026-06-04T12:50:06.1289143Z       ],
2026-06-04T12:50:06.1289599Z       "stages": {
2026-06-04T12:50:06.1290010Z         "doc": {
2026-06-04T12:50:06.1290451Z           "complete": false,
2026-06-04T12:50:06.1290895Z           "evidence": []
2026-06-04T12:50:06.1291299Z         },
2026-06-04T12:50:06.1291712Z         "impl": {
2026-06-04T12:50:06.1292161Z           "complete": true,
2026-06-04T12:50:06.1292598Z           "evidence": [
2026-06-04T12:50:06.1293007Z             {
2026-06-04T12:50:06.1293637Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1294075Z               "line": 86
2026-06-04T12:50:06.1294481Z             },
2026-06-04T12:50:06.1294874Z             {
2026-06-04T12:50:06.1295451Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:06.1295875Z               "line": 28
2026-06-04T12:50:06.1296283Z             },
2026-06-04T12:50:06.1296677Z             {
2026-06-04T12:50:06.1297253Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:06.1297689Z               "line": 74
2026-06-04T12:50:06.1298091Z             },
2026-06-04T12:50:06.1298493Z             {
2026-06-04T12:50:06.1299066Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:06.1299540Z               "line": 96
2026-06-04T12:50:06.1299937Z             },
2026-06-04T12:50:06.1300341Z             {
2026-06-04T12:50:06.1300916Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:50:06.1301360Z               "line": 81
2026-06-04T12:50:06.1301940Z             },
2026-06-04T12:50:06.1302338Z             {
2026-06-04T12:50:06.1302937Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:50:06.1303364Z               "line": 118
2026-06-04T12:50:06.1303766Z             }
2026-06-04T12:50:06.1304169Z           ]
2026-06-04T12:50:06.1304561Z         },
2026-06-04T12:50:06.1304969Z         "int": {
2026-06-04T12:50:06.1305410Z           "complete": false,
2026-06-04T12:50:06.1305847Z           "evidence": []
2026-06-04T12:50:06.1306242Z         },
2026-06-04T12:50:06.1306654Z         "unit": {
2026-06-04T12:50:06.1307103Z           "complete": true,
2026-06-04T12:50:06.1307523Z           "evidence": [
2026-06-04T12:50:06.1307925Z             {
2026-06-04T12:50:06.1308498Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:50:06.1308935Z               "line": 203
2026-06-04T12:50:06.1309374Z             },
2026-06-04T12:50:06.1309921Z             {
2026-06-04T12:50:06.1310509Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:50:06.1310951Z               "line": 232
2026-06-04T12:50:06.1311353Z             }
2026-06-04T12:50:06.1311748Z           ]
2026-06-04T12:50:06.1312149Z         }
2026-06-04T12:50:06.1312541Z       }
2026-06-04T12:50:06.1312935Z     },
2026-06-04T12:50:06.1313326Z     {
2026-06-04T12:50:06.1313756Z       "id": "REQ-INST-3",
2026-06-04T12:50:06.1314528Z       "title": "Dormant (warm) / suspended (cold) resting states",
2026-06-04T12:50:06.1314980Z       "requiredStages": [
2026-06-04T12:50:06.1315388Z         "doc",
2026-06-04T12:50:06.1315792Z         "impl",
2026-06-04T12:50:06.1316195Z         "unit"
2026-06-04T12:50:06.1316597Z       ],
2026-06-04T12:50:06.1317004Z       "stages": {
2026-06-04T12:50:06.1317416Z         "doc": {
2026-06-04T12:50:06.1317858Z           "complete": true,
2026-06-04T12:50:06.1318298Z           "evidence": [
2026-06-04T12:50:06.1318694Z             {
2026-06-04T12:50:06.1319305Z               "path": "docs/DORMANCY-BUDGET.md",
2026-06-04T12:50:06.1319747Z               "line": 3
2026-06-04T12:50:06.1320143Z             }
2026-06-04T12:50:06.1320543Z           ]
2026-06-04T12:50:06.1320930Z         },
2026-06-04T12:50:06.1321348Z         "impl": {
2026-06-04T12:50:06.1321787Z           "complete": true,
2026-06-04T12:50:06.1322217Z           "evidence": [
2026-06-04T12:50:06.1322617Z             {
2026-06-04T12:50:06.1323217Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:50:06.1323645Z               "line": 70
2026-06-04T12:50:06.1324040Z             },
2026-06-04T12:50:06.1324445Z             {
2026-06-04T12:50:06.1325061Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.1325496Z               "line": 385
2026-06-04T12:50:06.1325902Z             },
2026-06-04T12:50:06.1326294Z             {
2026-06-04T12:50:06.1326922Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1327362Z               "line": 197
2026-06-04T12:50:06.1327768Z             },
2026-06-04T12:50:06.1328172Z             {
2026-06-04T12:50:06.1330041Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1330957Z               "line": 272
2026-06-04T12:50:06.1331476Z             },
2026-06-04T12:50:06.1331982Z             {
2026-06-04T12:50:06.1332747Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1333399Z               "line": 293
2026-06-04T12:50:06.1333858Z             },
2026-06-04T12:50:06.1334291Z             {
2026-06-04T12:50:06.1334956Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:50:06.1335401Z               "line": 234
2026-06-04T12:50:06.1335838Z             },
2026-06-04T12:50:06.1336275Z             {
2026-06-04T12:50:06.1336991Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1337474Z               "line": 147
2026-06-04T12:50:06.1338251Z             },
2026-06-04T12:50:06.1339041Z             {
2026-06-04T12:50:06.1339952Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1340792Z               "line": 214
2026-06-04T12:50:06.1341222Z             },
2026-06-04T12:50:06.1341659Z             {
2026-06-04T12:50:06.1342694Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1348959Z               "line": 44
2026-06-04T12:50:06.1350119Z             },
2026-06-04T12:50:06.1350706Z             {
2026-06-04T12:50:06.1351535Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1351985Z               "line": 113
2026-06-04T12:50:06.1352400Z             },
2026-06-04T12:50:06.1352803Z             {
2026-06-04T12:50:06.1353418Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1353859Z               "line": 151
2026-06-04T12:50:06.1354256Z             },
2026-06-04T12:50:06.1354661Z             {
2026-06-04T12:50:06.1355270Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1356058Z               "line": 167
2026-06-04T12:50:06.1356516Z             },
2026-06-04T12:50:06.1356938Z             {
2026-06-04T12:50:06.1357581Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1358042Z               "line": 177
2026-06-04T12:50:06.1358476Z             },
2026-06-04T12:50:06.1358894Z             {
2026-06-04T12:50:06.1359577Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1360026Z               "line": 209
2026-06-04T12:50:06.1360427Z             },
2026-06-04T12:50:06.1360836Z             {
2026-06-04T12:50:06.1361438Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1361877Z               "line": 282
2026-06-04T12:50:06.1362277Z             },
2026-06-04T12:50:06.1362686Z             {
2026-06-04T12:50:06.1363303Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1363734Z               "line": 306
2026-06-04T12:50:06.1364142Z             },
2026-06-04T12:50:06.1364555Z             {
2026-06-04T12:50:06.1365169Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1365613Z               "line": 346
2026-06-04T12:50:06.1366026Z             },
2026-06-04T12:50:06.1366428Z             {
2026-06-04T12:50:06.1367038Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1367833Z               "line": 361
2026-06-04T12:50:06.1368415Z             },
2026-06-04T12:50:06.1368865Z             {
2026-06-04T12:50:06.1369730Z               "path": "crates/spt-daemon/tests/budget.rs",
2026-06-04T12:50:06.1370180Z               "line": 37
2026-06-04T12:50:06.1370589Z             },
2026-06-04T12:50:06.1371187Z             {
2026-06-04T12:50:06.1372022Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1372477Z               "line": 62
2026-06-04T12:50:06.1372904Z             },
2026-06-04T12:50:06.1373322Z             {
2026-06-04T12:50:06.1373908Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:06.1374388Z               "line": 156
2026-06-04T12:50:06.1375057Z             },
2026-06-04T12:50:06.1375527Z             {
2026-06-04T12:50:06.1376085Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1376546Z               "line": 332
2026-06-04T12:50:06.1376972Z             }
2026-06-04T12:50:06.1377380Z           ]
2026-06-04T12:50:06.1377801Z         },
2026-06-04T12:50:06.1378214Z         "int": {
2026-06-04T12:50:06.1378684Z           "complete": false,
2026-06-04T12:50:06.1379133Z           "evidence": []
2026-06-04T12:50:06.1379766Z         },
2026-06-04T12:50:06.1380179Z         "unit": {
2026-06-04T12:50:06.1380616Z           "complete": true,
2026-06-04T12:50:06.1381051Z           "evidence": [
2026-06-04T12:50:06.1381449Z             {
2026-06-04T12:50:06.1382063Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:06.1382496Z               "line": 292
2026-06-04T12:50:06.1382905Z             },
2026-06-04T12:50:06.1383331Z             {
2026-06-04T12:50:06.1383956Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1384598Z               "line": 610
2026-06-04T12:50:06.1384999Z             },
2026-06-04T12:50:06.1385403Z             {
2026-06-04T12:50:06.1386029Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1386465Z               "line": 661
2026-06-04T12:50:06.1386876Z             },
2026-06-04T12:50:06.1387268Z             {
2026-06-04T12:50:06.1387932Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1388361Z               "line": 365
2026-06-04T12:50:06.1388770Z             },
2026-06-04T12:50:06.1389217Z             {
2026-06-04T12:50:06.1389898Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1390337Z               "line": 412
2026-06-04T12:50:06.1390737Z             },
2026-06-04T12:50:06.1391140Z             {
2026-06-04T12:50:06.1391750Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1392347Z               "line": 372
2026-06-04T12:50:06.1392762Z             },
2026-06-04T12:50:06.1393164Z             {
2026-06-04T12:50:06.1393779Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1394206Z               "line": 401
2026-06-04T12:50:06.1394734Z             },
2026-06-04T12:50:06.1395124Z             {
2026-06-04T12:50:06.1395737Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1396164Z               "line": 434
2026-06-04T12:50:06.1396573Z             },
2026-06-04T12:50:06.1396972Z             {
2026-06-04T12:50:06.1397577Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1398013Z               "line": 542
2026-06-04T12:50:06.1398411Z             },
2026-06-04T12:50:06.1398821Z             {
2026-06-04T12:50:06.1399471Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1399914Z               "line": 621
2026-06-04T12:50:06.1400327Z             },
2026-06-04T12:50:06.1400739Z             {
2026-06-04T12:50:06.1401350Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1401793Z               "line": 635
2026-06-04T12:50:06.1402205Z             },
2026-06-04T12:50:06.1402612Z             {
2026-06-04T12:50:06.1403224Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1403661Z               "line": 566
2026-06-04T12:50:06.1404066Z             },
2026-06-04T12:50:06.1404466Z             {
2026-06-04T12:50:06.1405025Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:06.1405460Z               "line": 327
2026-06-04T12:50:06.1405866Z             },
2026-06-04T12:50:06.1406263Z             {
2026-06-04T12:50:06.1406788Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1407217Z               "line": 1116
2026-06-04T12:50:06.1407627Z             }
2026-06-04T12:50:06.1408013Z           ]
2026-06-04T12:50:06.1408417Z         }
2026-06-04T12:50:06.1408821Z       }
2026-06-04T12:50:06.1409264Z     },
2026-06-04T12:50:06.1409674Z     {
2026-06-04T12:50:06.1410125Z       "id": "REQ-INST-4",
2026-06-04T12:50:06.1411059Z       "title": "active to dormant/suspended fires a transition echo commune",
2026-06-04T12:50:06.1411631Z       "requiredStages": [
2026-06-04T12:50:06.1412046Z         "impl",
2026-06-04T12:50:06.1412457Z         "unit"
2026-06-04T12:50:06.1412852Z       ],
2026-06-04T12:50:06.1413272Z       "stages": {
2026-06-04T12:50:06.1413672Z         "doc": {
2026-06-04T12:50:06.1414135Z           "complete": false,
2026-06-04T12:50:06.1414567Z           "evidence": []
2026-06-04T12:50:06.1414975Z         },
2026-06-04T12:50:06.1415394Z         "impl": {
2026-06-04T12:50:06.1415828Z           "complete": true,
2026-06-04T12:50:06.1416258Z           "evidence": [
2026-06-04T12:50:06.1416658Z             {
2026-06-04T12:50:06.1417294Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1417724Z               "line": 273
2026-06-04T12:50:06.1418147Z             },
2026-06-04T12:50:06.1418554Z             {
2026-06-04T12:50:06.1419378Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1419846Z               "line": 201
2026-06-04T12:50:06.1420267Z             },
2026-06-04T12:50:06.1420686Z             {
2026-06-04T12:50:06.1421431Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1421873Z               "line": 233
2026-06-04T12:50:06.1422280Z             },
2026-06-04T12:50:06.1422679Z             {
2026-06-04T12:50:06.1423295Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1423730Z               "line": 269
2026-06-04T12:50:06.1424142Z             }
2026-06-04T12:50:06.1424539Z           ]
2026-06-04T12:50:06.1424945Z         },
2026-06-04T12:50:06.1425359Z         "int": {
2026-06-04T12:50:06.1425807Z           "complete": false,
2026-06-04T12:50:06.1426249Z           "evidence": []
2026-06-04T12:50:06.1426642Z         },
2026-06-04T12:50:06.1427215Z         "unit": {
2026-06-04T12:50:06.1427659Z           "complete": true,
2026-06-04T12:50:06.1432931Z           "evidence": [
2026-06-04T12:50:06.1433520Z             {
2026-06-04T12:50:06.1434193Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.1434634Z               "line": 656
2026-06-04T12:50:06.1435041Z             },
2026-06-04T12:50:06.1435447Z             {
2026-06-04T12:50:06.1436060Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1436502Z               "line": 452
2026-06-04T12:50:06.1436910Z             },
2026-06-04T12:50:06.1437307Z             {
2026-06-04T12:50:06.1437920Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1438347Z               "line": 517
2026-06-04T12:50:06.1438755Z             },
2026-06-04T12:50:06.1439225Z             {
2026-06-04T12:50:06.1439848Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:50:06.1440284Z               "line": 584
2026-06-04T12:50:06.1440728Z             }
2026-06-04T12:50:06.1441134Z           ]
2026-06-04T12:50:06.1441540Z         }
2026-06-04T12:50:06.1441966Z       }
2026-06-04T12:50:06.1442354Z     },
2026-06-04T12:50:06.1442757Z     {
2026-06-04T12:50:06.1443207Z       "id": "REQ-INST-5",
2026-06-04T12:50:06.1444151Z       "title": "Two-tier context sync (live to all, project to same-project)",
2026-06-04T12:50:06.1444620Z       "requiredStages": [
2026-06-04T12:50:06.1445028Z         "impl",
2026-06-04T12:50:06.1445438Z         "unit"
2026-06-04T12:50:06.1445834Z       ],
2026-06-04T12:50:06.1446265Z       "stages": {
2026-06-04T12:50:06.1446681Z         "doc": {
2026-06-04T12:50:06.1447134Z           "complete": false,
2026-06-04T12:50:06.1447581Z           "evidence": []
2026-06-04T12:50:06.1447977Z         },
2026-06-04T12:50:06.1448393Z         "impl": {
2026-06-04T12:50:06.1448830Z           "complete": true,
2026-06-04T12:50:06.1449368Z           "evidence": [
2026-06-04T12:50:06.1449784Z             {
2026-06-04T12:50:06.1450435Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:50:06.1450880Z               "line": 39
2026-06-04T12:50:06.1451296Z             },
2026-06-04T12:50:06.1451707Z             {
2026-06-04T12:50:06.1452288Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1452726Z               "line": 68
2026-06-04T12:50:06.1453136Z             },
2026-06-04T12:50:06.1453533Z             {
2026-06-04T12:50:06.1454118Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1454538Z               "line": 93
2026-06-04T12:50:06.1454947Z             },
2026-06-04T12:50:06.1455339Z             {
2026-06-04T12:50:06.1455926Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1456360Z               "line": 160
2026-06-04T12:50:06.1456752Z             },
2026-06-04T12:50:06.1457160Z             {
2026-06-04T12:50:06.1457728Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1458162Z               "line": 271
2026-06-04T12:50:06.1458573Z             }
2026-06-04T12:50:06.1458981Z           ]
2026-06-04T12:50:06.1459853Z         },
2026-06-04T12:50:06.1460278Z         "int": {
2026-06-04T12:50:06.1460753Z           "complete": true,
2026-06-04T12:50:06.1461200Z           "evidence": [
2026-06-04T12:50:06.1461626Z             {
2026-06-04T12:50:06.1462286Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.1462746Z               "line": 142
2026-06-04T12:50:06.1463180Z             },
2026-06-04T12:50:06.1463596Z             {
2026-06-04T12:50:06.1464252Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T12:50:06.1464683Z               "line": 102
2026-06-04T12:50:06.1465094Z             }
2026-06-04T12:50:06.1465484Z           ]
2026-06-04T12:50:06.1465890Z         },
2026-06-04T12:50:06.1466306Z         "unit": {
2026-06-04T12:50:06.1466745Z           "complete": true,
2026-06-04T12:50:06.1467185Z           "evidence": [
2026-06-04T12:50:06.1467583Z             {
2026-06-04T12:50:06.1468362Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1468807Z               "line": 461
2026-06-04T12:50:06.1469266Z             },
2026-06-04T12:50:06.1469677Z             {
2026-06-04T12:50:06.1470251Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1470701Z               "line": 495
2026-06-04T12:50:06.1471097Z             },
2026-06-04T12:50:06.1471496Z             {
2026-06-04T12:50:06.1472108Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:50:06.1472541Z               "line": 199
2026-06-04T12:50:06.1472946Z             }
2026-06-04T12:50:06.1473335Z           ]
2026-06-04T12:50:06.1473731Z         }
2026-06-04T12:50:06.1474126Z       }
2026-06-04T12:50:06.1474520Z     },
2026-06-04T12:50:06.1474905Z     {
2026-06-04T12:50:06.1475357Z       "id": "REQ-INST-6",
2026-06-04T12:50:06.1476377Z       "title": "Deferred messages not delivered to dormant/suspended instances",
2026-06-04T12:50:06.1476839Z       "requiredStages": [],
2026-06-04T12:50:06.1477279Z       "stages": {
2026-06-04T12:50:06.1477676Z         "doc": {
2026-06-04T12:50:06.1478150Z           "complete": false,
2026-06-04T12:50:06.1478592Z           "evidence": []
2026-06-04T12:50:06.1478979Z         },
2026-06-04T12:50:06.1479442Z         "impl": {
2026-06-04T12:50:06.1479896Z           "complete": false,
2026-06-04T12:50:06.1480338Z           "evidence": []
2026-06-04T12:50:06.1480734Z         },
2026-06-04T12:50:06.1481151Z         "int": {
2026-06-04T12:50:06.1481597Z           "complete": false,
2026-06-04T12:50:06.1482037Z           "evidence": []
2026-06-04T12:50:06.1482440Z         },
2026-06-04T12:50:06.1482841Z         "unit": {
2026-06-04T12:50:06.1483289Z           "complete": false,
2026-06-04T12:50:06.1483712Z           "evidence": []
2026-06-04T12:50:06.1484109Z         }
2026-06-04T12:50:06.1484497Z       }
2026-06-04T12:50:06.1484894Z     },
2026-06-04T12:50:06.1485292Z     {
2026-06-04T12:50:06.1485728Z       "id": "REQ-INST-7",
2026-06-04T12:50:06.1486478Z       "title": "Subnet registry + bare-id resolution policy",
2026-06-04T12:50:06.1486945Z       "requiredStages": [
2026-06-04T12:50:06.1487360Z         "impl",
2026-06-04T12:50:06.1487762Z         "unit"
2026-06-04T12:50:06.1488161Z       ],
2026-06-04T12:50:06.1488582Z       "stages": {
2026-06-04T12:50:06.1488986Z         "doc": {
2026-06-04T12:50:06.1489476Z           "complete": false,
2026-06-04T12:50:06.1489908Z           "evidence": []
2026-06-04T12:50:06.1490318Z         },
2026-06-04T12:50:06.1490721Z         "impl": {
2026-06-04T12:50:06.1491171Z           "complete": true,
2026-06-04T12:50:06.1491604Z           "evidence": [
2026-06-04T12:50:06.1492002Z             {
2026-06-04T12:50:06.1492627Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.1493053Z               "line": 361
2026-06-04T12:50:06.1493454Z             },
2026-06-04T12:50:06.1493851Z             {
2026-06-04T12:50:06.1494483Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:50:06.1494924Z               "line": 40
2026-06-04T12:50:06.1495327Z             },
2026-06-04T12:50:06.1495913Z             {
2026-06-04T12:50:06.1496578Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1497011Z               "line": 27
2026-06-04T12:50:06.1497418Z             },
2026-06-04T12:50:06.1497813Z             {
2026-06-04T12:50:06.1498482Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1498912Z               "line": 120
2026-06-04T12:50:06.1499373Z             },
2026-06-04T12:50:06.1499768Z             {
2026-06-04T12:50:06.1500433Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1500874Z               "line": 197
2026-06-04T12:50:06.1501273Z             },
2026-06-04T12:50:06.1501681Z             {
2026-06-04T12:50:06.1502277Z               "path": "crates/spt-net/src/net/ndjson.rs",
2026-06-04T12:50:06.1502713Z               "line": 56
2026-06-04T12:50:06.1503108Z             },
2026-06-04T12:50:06.1503659Z             {
2026-06-04T12:50:06.1504290Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1504729Z               "line": 41
2026-06-04T12:50:06.1505130Z             },
2026-06-04T12:50:06.1505520Z             {
2026-06-04T12:50:06.1506165Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:50:06.1506581Z               "line": 27
2026-06-04T12:50:06.1506987Z             },
2026-06-04T12:50:06.1507386Z             {
2026-06-04T12:50:06.1508020Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:50:06.1512429Z               "line": 59
2026-06-04T12:50:06.1512974Z             },
2026-06-04T12:50:06.1513408Z             {
2026-06-04T12:50:06.1514070Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:50:06.1514528Z               "line": 68
2026-06-04T12:50:06.1514953Z             },
2026-06-04T12:50:06.1515371Z             {
2026-06-04T12:50:06.1515990Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:50:06.1516478Z               "line": 129
2026-06-04T12:50:06.1516924Z             }
2026-06-04T12:50:06.1517343Z           ]
2026-06-04T12:50:06.1517794Z         },
2026-06-04T12:50:06.1518229Z         "int": {
2026-06-04T12:50:06.1518699Z           "complete": true,
2026-06-04T12:50:06.1519236Z           "evidence": [
2026-06-04T12:50:06.1519664Z             {
2026-06-04T12:50:06.1520340Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T12:50:06.1520797Z               "line": 102
2026-06-04T12:50:06.1521220Z             }
2026-06-04T12:50:06.1521648Z           ]
2026-06-04T12:50:06.1522059Z         },
2026-06-04T12:50:06.1522489Z         "unit": {
2026-06-04T12:50:06.1522946Z           "complete": true,
2026-06-04T12:50:06.1523405Z           "evidence": [
2026-06-04T12:50:06.1523822Z             {
2026-06-04T12:50:06.1524517Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1524973Z               "line": 342
2026-06-04T12:50:06.1525409Z             },
2026-06-04T12:50:06.1525834Z             {
2026-06-04T12:50:06.1526529Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:50:06.1526988Z               "line": 458
2026-06-04T12:50:06.1527414Z             },
2026-06-04T12:50:06.1527841Z             {
2026-06-04T12:50:06.1528518Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T12:50:06.1528956Z               "line": 83
2026-06-04T12:50:06.1529431Z             },
2026-06-04T12:50:06.1529857Z             {
2026-06-04T12:50:06.1530500Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1530960Z               "line": 482
2026-06-04T12:50:06.1531378Z             },
2026-06-04T12:50:06.1531803Z             {
2026-06-04T12:50:06.1532436Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1532893Z               "line": 493
2026-06-04T12:50:06.1533309Z             },
2026-06-04T12:50:06.1533731Z             {
2026-06-04T12:50:06.1534388Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1535100Z               "line": 502
2026-06-04T12:50:06.1535527Z             },
2026-06-04T12:50:06.1535943Z             {
2026-06-04T12:50:06.1536615Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:50:06.1537062Z               "line": 90
2026-06-04T12:50:06.1537488Z             },
2026-06-04T12:50:06.1537917Z             {
2026-06-04T12:50:06.1538564Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:50:06.1539019Z               "line": 105
2026-06-04T12:50:06.1539482Z             },
2026-06-04T12:50:06.1539912Z             {
2026-06-04T12:50:06.1540562Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:50:06.1541029Z               "line": 131
2026-06-04T12:50:06.1541463Z             }
2026-06-04T12:50:06.1541884Z           ]
2026-06-04T12:50:06.1542307Z         }
2026-06-04T12:50:06.1542721Z       }
2026-06-04T12:50:06.1543334Z     },
2026-06-04T12:50:06.1543748Z     {
2026-06-04T12:50:06.1544194Z       "id": "REQ-INST-8",
2026-06-04T12:50:06.1545021Z       "title": "Remote-control mode distinct from local operation",
2026-06-04T12:50:06.1545476Z       "requiredStages": [
2026-06-04T12:50:06.1545886Z         "impl",
2026-06-04T12:50:06.1546282Z         "unit"
2026-06-04T12:50:06.1546687Z       ],
2026-06-04T12:50:06.1547088Z       "stages": {
2026-06-04T12:50:06.1547493Z         "doc": {
2026-06-04T12:50:06.1547949Z           "complete": false,
2026-06-04T12:50:06.1548379Z           "evidence": []
2026-06-04T12:50:06.1548782Z         },
2026-06-04T12:50:06.1549230Z         "impl": {
2026-06-04T12:50:06.1549681Z           "complete": true,
2026-06-04T12:50:06.1550103Z           "evidence": [
2026-06-04T12:50:06.1550511Z             {
2026-06-04T12:50:06.1551119Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:50:06.1551546Z               "line": 98
2026-06-04T12:50:06.1551958Z             },
2026-06-04T12:50:06.1552369Z             {
2026-06-04T12:50:06.1552972Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:50:06.1553410Z               "line": 202
2026-06-04T12:50:06.1553814Z             },
2026-06-04T12:50:06.1554212Z             {
2026-06-04T12:50:06.1554804Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:50:06.1555240Z               "line": 220
2026-06-04T12:50:06.1555636Z             },
2026-06-04T12:50:06.1556038Z             {
2026-06-04T12:50:06.1556635Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T12:50:06.1557071Z               "line": 35
2026-06-04T12:50:06.1557475Z             }
2026-06-04T12:50:06.1557866Z           ]
2026-06-04T12:50:06.1558262Z         },
2026-06-04T12:50:06.1558660Z         "int": {
2026-06-04T12:50:06.1559107Z           "complete": true,
2026-06-04T12:50:06.1559578Z           "evidence": [
2026-06-04T12:50:06.1559992Z             {
2026-06-04T12:50:06.1560633Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.1561079Z               "line": 375
2026-06-04T12:50:06.1561581Z             }
2026-06-04T12:50:06.1561972Z           ]
2026-06-04T12:50:06.1562374Z         },
2026-06-04T12:50:06.1562783Z         "unit": {
2026-06-04T12:50:06.1563231Z           "complete": true,
2026-06-04T12:50:06.1563660Z           "evidence": [
2026-06-04T12:50:06.1564054Z             {
2026-06-04T12:50:06.1564677Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:50:06.1565100Z               "line": 172
2026-06-04T12:50:06.1565506Z             },
2026-06-04T12:50:06.1565896Z             {
2026-06-04T12:50:06.1566510Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:50:06.1566939Z               "line": 226
2026-06-04T12:50:06.1567337Z             },
2026-06-04T12:50:06.1567735Z             {
2026-06-04T12:50:06.1568337Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T12:50:06.1568768Z               "line": 70
2026-06-04T12:50:06.1569223Z             },
2026-06-04T12:50:06.1569636Z             {
2026-06-04T12:50:06.1570241Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T12:50:06.1570925Z               "line": 101
2026-06-04T12:50:06.1571331Z             }
2026-06-04T12:50:06.1571724Z           ]
2026-06-04T12:50:06.1572122Z         }
2026-06-04T12:50:06.1572520Z       }
2026-06-04T12:50:06.1572924Z     },
2026-06-04T12:50:06.1573322Z     {
2026-06-04T12:50:06.1573753Z       "id": "REQ-INST-9",
2026-06-04T12:50:06.1574750Z       "title": "Multi-subnet membership (same-user N subnets; cross-user seam)",
2026-06-04T12:50:06.1575210Z       "requiredStages": [
2026-06-04T12:50:06.1575620Z         "impl",
2026-06-04T12:50:06.1576016Z         "unit"
2026-06-04T12:50:06.1576415Z       ],
2026-06-04T12:50:06.1576834Z       "stages": {
2026-06-04T12:50:06.1577235Z         "doc": {
2026-06-04T12:50:06.1577691Z           "complete": false,
2026-06-04T12:50:06.1578123Z           "evidence": []
2026-06-04T12:50:06.1578521Z         },
2026-06-04T12:50:06.1579071Z         "impl": {
2026-06-04T12:50:06.1579559Z           "complete": true,
2026-06-04T12:50:06.1580106Z           "evidence": [
2026-06-04T12:50:06.1580506Z             {
2026-06-04T12:50:06.1581133Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1581554Z               "line": 198
2026-06-04T12:50:06.1581958Z             }
2026-06-04T12:50:06.1582355Z           ]
2026-06-04T12:50:06.1582753Z         },
2026-06-04T12:50:06.1583162Z         "int": {
2026-06-04T12:50:06.1583602Z           "complete": false,
2026-06-04T12:50:06.1584037Z           "evidence": []
2026-06-04T12:50:06.1584426Z         },
2026-06-04T12:50:06.1584840Z         "unit": {
2026-06-04T12:50:06.1585277Z           "complete": true,
2026-06-04T12:50:06.1585717Z           "evidence": [
2026-06-04T12:50:06.1586119Z             {
2026-06-04T12:50:06.1587525Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1588244Z               "line": 652
2026-06-04T12:50:06.1588763Z             },
2026-06-04T12:50:06.1589341Z             {
2026-06-04T12:50:06.1590200Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1595499Z               "line": 661
2026-06-04T12:50:06.1595961Z             },
2026-06-04T12:50:06.1596379Z             {
2026-06-04T12:50:06.1597041Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1597496Z               "line": 675
2026-06-04T12:50:06.1597925Z             },
2026-06-04T12:50:06.1598346Z             {
2026-06-04T12:50:06.1598980Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1599504Z               "line": 685
2026-06-04T12:50:06.1599906Z             },
2026-06-04T12:50:06.1600310Z             {
2026-06-04T12:50:06.1600932Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:50:06.1601373Z               "line": 704
2026-06-04T12:50:06.1601784Z             }
2026-06-04T12:50:06.1602182Z           ]
2026-06-04T12:50:06.1602585Z         }
2026-06-04T12:50:06.1603033Z       }
2026-06-04T12:50:06.1603435Z     },
2026-06-04T12:50:06.1603836Z     {
2026-06-04T12:50:06.1604301Z       "id": "REQ-INSTALL-1",
2026-06-04T12:50:06.1605341Z       "title": "Two install paths; signed one-line script; OS-service registration",
2026-06-04T12:50:06.1605827Z       "requiredStages": [],
2026-06-04T12:50:06.1606260Z       "stages": {
2026-06-04T12:50:06.1606667Z         "doc": {
2026-06-04T12:50:06.1607131Z           "complete": false,
2026-06-04T12:50:06.1607565Z           "evidence": []
2026-06-04T12:50:06.1607971Z         },
2026-06-04T12:50:06.1608390Z         "impl": {
2026-06-04T12:50:06.1608841Z           "complete": false,
2026-06-04T12:50:06.1609321Z           "evidence": []
2026-06-04T12:50:06.1609727Z         },
2026-06-04T12:50:06.1610142Z         "int": {
2026-06-04T12:50:06.1610585Z           "complete": false,
2026-06-04T12:50:06.1611020Z           "evidence": []
2026-06-04T12:50:06.1611416Z         },
2026-06-04T12:50:06.1611834Z         "unit": {
2026-06-04T12:50:06.1612302Z           "complete": false,
2026-06-04T12:50:06.1613118Z           "evidence": []
2026-06-04T12:50:06.1613547Z         }
2026-06-04T12:50:06.1613962Z       }
2026-06-04T12:50:06.1614380Z     },
2026-06-04T12:50:06.1614790Z     {
2026-06-04T12:50:06.1615272Z       "id": "REQ-INSTALL-2",
2026-06-04T12:50:06.1615983Z       "title": "Marketplace-repackaging-friendly install",
2026-06-04T12:50:06.1616438Z       "requiredStages": [],
2026-06-04T12:50:06.1616856Z       "stages": {
2026-06-04T12:50:06.1617264Z         "doc": {
2026-06-04T12:50:06.1617724Z           "complete": false,
2026-06-04T12:50:06.1618158Z           "evidence": []
2026-06-04T12:50:06.1618567Z         },
2026-06-04T12:50:06.1618977Z         "impl": {
2026-06-04T12:50:06.1619487Z           "complete": false,
2026-06-04T12:50:06.1619935Z           "evidence": []
2026-06-04T12:50:06.1620331Z         },
2026-06-04T12:50:06.1620739Z         "int": {
2026-06-04T12:50:06.1621179Z           "complete": false,
2026-06-04T12:50:06.1621834Z           "evidence": []
2026-06-04T12:50:06.1622246Z         },
2026-06-04T12:50:06.1622667Z         "unit": {
2026-06-04T12:50:06.1623123Z           "complete": false,
2026-06-04T12:50:06.1623556Z           "evidence": []
2026-06-04T12:50:06.1623961Z         }
2026-06-04T12:50:06.1624356Z       }
2026-06-04T12:50:06.1624759Z     },
2026-06-04T12:50:06.1625156Z     {
2026-06-04T12:50:06.1625610Z       "id": "REQ-INSTALL-3",
2026-06-04T12:50:06.1626354Z       "title": "Idempotent + interactive-optional first run",
2026-06-04T12:50:06.1626820Z       "requiredStages": [],
2026-06-04T12:50:06.1627244Z       "stages": {
2026-06-04T12:50:06.1627653Z         "doc": {
2026-06-04T12:50:06.1628105Z           "complete": false,
2026-06-04T12:50:06.1628543Z           "evidence": []
2026-06-04T12:50:06.1628942Z         },
2026-06-04T12:50:06.1629416Z         "impl": {
2026-06-04T12:50:06.1629860Z           "complete": false,
2026-06-04T12:50:06.1630301Z           "evidence": []
2026-06-04T12:50:06.1630708Z         },
2026-06-04T12:50:06.1631121Z         "int": {
2026-06-04T12:50:06.1631589Z           "complete": false,
2026-06-04T12:50:06.1632026Z           "evidence": []
2026-06-04T12:50:06.1632445Z         },
2026-06-04T12:50:06.1632849Z         "unit": {
2026-06-04T12:50:06.1633301Z           "complete": false,
2026-06-04T12:50:06.1633734Z           "evidence": []
2026-06-04T12:50:06.1634139Z         }
2026-06-04T12:50:06.1634538Z       }
2026-06-04T12:50:06.1634929Z     },
2026-06-04T12:50:06.1635324Z     {
2026-06-04T12:50:06.1635776Z       "id": "REQ-INSTALL-4",
2026-06-04T12:50:06.1639637Z       "title": "Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over",
2026-06-04T12:50:06.1640122Z       "requiredStages": [],
2026-06-04T12:50:06.1640533Z       "stages": {
2026-06-04T12:50:06.1640949Z         "doc": {
2026-06-04T12:50:06.1641408Z           "complete": false,
2026-06-04T12:50:06.1641848Z           "evidence": []
2026-06-04T12:50:06.1642249Z         },
2026-06-04T12:50:06.1642661Z         "impl": {
2026-06-04T12:50:06.1643113Z           "complete": false,
2026-06-04T12:50:06.1643550Z           "evidence": []
2026-06-04T12:50:06.1643954Z         },
2026-06-04T12:50:06.1644361Z         "int": {
2026-06-04T12:50:06.1644813Z           "complete": false,
2026-06-04T12:50:06.1645241Z           "evidence": []
2026-06-04T12:50:06.1645650Z         },
2026-06-04T12:50:06.1646065Z         "unit": {
2026-06-04T12:50:06.1646507Z           "complete": false,
2026-06-04T12:50:06.1646943Z           "evidence": []
2026-06-04T12:50:06.1647339Z         }
2026-06-04T12:50:06.1647741Z       }
2026-06-04T12:50:06.1648130Z     },
2026-06-04T12:50:06.1648521Z     {
2026-06-04T12:50:06.1648972Z       "id": "REQ-MANIFEST-1",
2026-06-04T12:50:06.1650042Z       "title": "Per-adapter manifest with adapter_name and min_spt_core_version",
2026-06-04T12:50:06.1650536Z       "requiredStages": [
2026-06-04T12:50:06.1650941Z         "doc",
2026-06-04T12:50:06.1651525Z         "impl",
2026-06-04T12:50:06.1651931Z         "unit"
2026-06-04T12:50:06.1652332Z       ],
2026-06-04T12:50:06.1652744Z       "stages": {
2026-06-04T12:50:06.1653157Z         "doc": {
2026-06-04T12:50:06.1653609Z           "complete": true,
2026-06-04T12:50:06.1654033Z           "evidence": [
2026-06-04T12:50:06.1654438Z             {
2026-06-04T12:50:06.1654927Z               "path": "docs/MANIFEST.md",
2026-06-04T12:50:06.1655366Z               "line": 19
2026-06-04T12:50:06.1655770Z             }
2026-06-04T12:50:06.1656166Z           ]
2026-06-04T12:50:06.1656571Z         },
2026-06-04T12:50:06.1656978Z         "impl": {
2026-06-04T12:50:06.1657431Z           "complete": true,
2026-06-04T12:50:06.1657855Z           "evidence": [
2026-06-04T12:50:06.1658260Z             {
2026-06-04T12:50:06.1658883Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1659374Z               "line": 18
2026-06-04T12:50:06.1659949Z             }
2026-06-04T12:50:06.1660351Z           ]
2026-06-04T12:50:06.1660770Z         },
2026-06-04T12:50:06.1661182Z         "int": {
2026-06-04T12:50:06.1661635Z           "complete": false,
2026-06-04T12:50:06.1662154Z           "evidence": []
2026-06-04T12:50:06.1662557Z         },
2026-06-04T12:50:06.1662973Z         "unit": {
2026-06-04T12:50:06.1663412Z           "complete": true,
2026-06-04T12:50:06.1663849Z           "evidence": [
2026-06-04T12:50:06.1664245Z             {
2026-06-04T12:50:06.1664872Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1665303Z               "line": 706
2026-06-04T12:50:06.1665717Z             },
2026-06-04T12:50:06.1666114Z             {
2026-06-04T12:50:06.1666738Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1667175Z               "line": 802
2026-06-04T12:50:06.1667571Z             },
2026-06-04T12:50:06.1667978Z             {
2026-06-04T12:50:06.1668617Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1669054Z               "line": 814
2026-06-04T12:50:06.1669519Z             },
2026-06-04T12:50:06.1669913Z             {
2026-06-04T12:50:06.1670543Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1670974Z               "line": 822
2026-06-04T12:50:06.1671378Z             },
2026-06-04T12:50:06.1671777Z             {
2026-06-04T12:50:06.1672394Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1676731Z               "line": 839
2026-06-04T12:50:06.1677237Z             },
2026-06-04T12:50:06.1677646Z             {
2026-06-04T12:50:06.1678287Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1678730Z               "line": 853
2026-06-04T12:50:06.1679140Z             },
2026-06-04T12:50:06.1679627Z             {
2026-06-04T12:50:06.1680260Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1680726Z               "line": 868
2026-06-04T12:50:06.1681134Z             },
2026-06-04T12:50:06.1681544Z             {
2026-06-04T12:50:06.1682168Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1682601Z               "line": 883
2026-06-04T12:50:06.1682996Z             },
2026-06-04T12:50:06.1683394Z             {
2026-06-04T12:50:06.1684005Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1684439Z               "line": 898
2026-06-04T12:50:06.1684836Z             },
2026-06-04T12:50:06.1685244Z             {
2026-06-04T12:50:06.1685869Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.1686301Z               "line": 909
2026-06-04T12:50:06.1686706Z             }
2026-06-04T12:50:06.1687097Z           ]
2026-06-04T12:50:06.1687498Z         }
2026-06-04T12:50:06.1687890Z       }
2026-06-04T12:50:06.1688291Z     },
2026-06-04T12:50:06.1688689Z     {
2026-06-04T12:50:06.1689142Z       "id": "REQ-MIGRATE-1",
2026-06-04T12:50:06.1690100Z       "title": "Auto-detect and migrate a legacy claude_skill_owl install",
2026-06-04T12:50:06.1690825Z       "requiredStages": [],
2026-06-04T12:50:06.1691266Z       "stages": {
2026-06-04T12:50:06.1691691Z         "doc": {
2026-06-04T12:50:06.1692172Z           "complete": false,
2026-06-04T12:50:06.1692626Z           "evidence": []
2026-06-04T12:50:06.1693018Z         },
2026-06-04T12:50:06.1693433Z         "impl": {
2026-06-04T12:50:06.1693878Z           "complete": false,
2026-06-04T12:50:06.1694320Z           "evidence": []
2026-06-04T12:50:06.1694712Z         },
2026-06-04T12:50:06.1695118Z         "int": {
2026-06-04T12:50:06.1695567Z           "complete": false,
2026-06-04T12:50:06.1695995Z           "evidence": []
2026-06-04T12:50:06.1696396Z         },
2026-06-04T12:50:06.1696797Z         "unit": {
2026-06-04T12:50:06.1697243Z           "complete": false,
2026-06-04T12:50:06.1697670Z           "evidence": []
2026-06-04T12:50:06.1698072Z         }
2026-06-04T12:50:06.1698468Z       }
2026-06-04T12:50:06.1698994Z     },
2026-06-04T12:50:06.1699437Z     {
2026-06-04T12:50:06.1699894Z       "id": "REQ-MSG-1",
2026-06-04T12:50:06.1702545Z       "title": "Local message delivery: TCP-first to a registered address, spool fallback when offline; id->address via registry (stale-clean first); reply routing (__REPLY_TO__)",
2026-06-04T12:50:06.1703004Z       "requiredStages": [
2026-06-04T12:50:06.1703414Z         "impl",
2026-06-04T12:50:06.1703818Z         "unit",
2026-06-04T12:50:06.1704218Z         "int"
2026-06-04T12:50:06.1704622Z       ],
2026-06-04T12:50:06.1705024Z       "stages": {
2026-06-04T12:50:06.1705434Z         "doc": {
2026-06-04T12:50:06.1705873Z           "complete": false,
2026-06-04T12:50:06.1706311Z           "evidence": []
2026-06-04T12:50:06.1706721Z         },
2026-06-04T12:50:06.1707127Z         "impl": {
2026-06-04T12:50:06.1707581Z           "complete": true,
2026-06-04T12:50:06.1708003Z           "evidence": [
2026-06-04T12:50:06.1708403Z             {
2026-06-04T12:50:06.1708995Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1709463Z               "line": 28
2026-06-04T12:50:06.1709888Z             },
2026-06-04T12:50:06.1710282Z             {
2026-06-04T12:50:06.1710862Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1711284Z               "line": 94
2026-06-04T12:50:06.1711690Z             },
2026-06-04T12:50:06.1712080Z             {
2026-06-04T12:50:06.1712657Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1713092Z               "line": 127
2026-06-04T12:50:06.1713486Z             },
2026-06-04T12:50:06.1713880Z             {
2026-06-04T12:50:06.1714436Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1714870Z               "line": 149
2026-06-04T12:50:06.1715278Z             },
2026-06-04T12:50:06.1715676Z             {
2026-06-04T12:50:06.1716259Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1716686Z               "line": 174
2026-06-04T12:50:06.1717103Z             },
2026-06-04T12:50:06.1717502Z             {
2026-06-04T12:50:06.1718100Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:50:06.1718525Z               "line": 18
2026-06-04T12:50:06.1718926Z             },
2026-06-04T12:50:06.1719366Z             {
2026-06-04T12:50:06.1719909Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:06.1720340Z               "line": 13
2026-06-04T12:50:06.1720787Z             },
2026-06-04T12:50:06.1721189Z             {
2026-06-04T12:50:06.1721739Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:06.1722162Z               "line": 61
2026-06-04T12:50:06.1722570Z             },
2026-06-04T12:50:06.1722962Z             {
2026-06-04T12:50:06.1723513Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:50:06.1723931Z               "line": 10
2026-06-04T12:50:06.1724342Z             }
2026-06-04T12:50:06.1724737Z           ]
2026-06-04T12:50:06.1725128Z         },
2026-06-04T12:50:06.1725557Z         "int": {
2026-06-04T12:50:06.1725996Z           "complete": true,
2026-06-04T12:50:06.1726623Z           "evidence": [
2026-06-04T12:50:06.1727025Z             {
2026-06-04T12:50:06.1727727Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:50:06.1728155Z               "line": 9
2026-06-04T12:50:06.1728550Z             },
2026-06-04T12:50:06.1728956Z             {
2026-06-04T12:50:06.1729682Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:50:06.1730116Z               "line": 66
2026-06-04T12:50:06.1730514Z             },
2026-06-04T12:50:06.1730918Z             {
2026-06-04T12:50:06.1731616Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:50:06.1732049Z               "line": 116
2026-06-04T12:50:06.1732448Z             }
2026-06-04T12:50:06.1732838Z           ]
2026-06-04T12:50:06.1733234Z         },
2026-06-04T12:50:06.1733639Z         "unit": {
2026-06-04T12:50:06.1734086Z           "complete": true,
2026-06-04T12:50:06.1734666Z           "evidence": [
2026-06-04T12:50:06.1735084Z             {
2026-06-04T12:50:06.1735669Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1736101Z               "line": 203
2026-06-04T12:50:06.1736511Z             },
2026-06-04T12:50:06.1736903Z             {
2026-06-04T12:50:06.1737477Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1737917Z               "line": 232
2026-06-04T12:50:06.1738315Z             },
2026-06-04T12:50:06.1738716Z             {
2026-06-04T12:50:06.1739330Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1739767Z               "line": 277
2026-06-04T12:50:06.1740158Z             },
2026-06-04T12:50:06.1740559Z             {
2026-06-04T12:50:06.1741137Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1741562Z               "line": 300
2026-06-04T12:50:06.1741970Z             },
2026-06-04T12:50:06.1742358Z             {
2026-06-04T12:50:06.1742945Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:50:06.1743384Z               "line": 322
2026-06-04T12:50:06.1743795Z             },
2026-06-04T12:50:06.1744195Z             {
2026-06-04T12:50:06.1744770Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:50:06.1745204Z               "line": 203
2026-06-04T12:50:06.1745604Z             },
2026-06-04T12:50:06.1746011Z             {
2026-06-04T12:50:06.1746592Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:50:06.1747032Z               "line": 233
2026-06-04T12:50:06.1747443Z             },
2026-06-04T12:50:06.1747840Z             {
2026-06-04T12:50:06.1748431Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:50:06.1748857Z               "line": 247
2026-06-04T12:50:06.1749302Z             },
2026-06-04T12:50:06.1749709Z             {
2026-06-04T12:50:06.1750289Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:50:06.1750719Z               "line": 259
2026-06-04T12:50:06.1751131Z             },
2026-06-04T12:50:06.1751526Z             {
2026-06-04T12:50:06.1752080Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:06.1752515Z               "line": 158
2026-06-04T12:50:06.1756630Z             },
2026-06-04T12:50:06.1757136Z             {
2026-06-04T12:50:06.1757729Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:50:06.1758180Z               "line": 235
2026-06-04T12:50:06.1758611Z             },
2026-06-04T12:50:06.1759031Z             {
2026-06-04T12:50:06.1759666Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:50:06.1760100Z               "line": 68
2026-06-04T12:50:06.1760496Z             },
2026-06-04T12:50:06.1760897Z             {
2026-06-04T12:50:06.1761440Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:50:06.1761876Z               "line": 74
2026-06-04T12:50:06.1762273Z             },
2026-06-04T12:50:06.1762676Z             {
2026-06-04T12:50:06.1763225Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:50:06.1763709Z               "line": 80
2026-06-04T12:50:06.1764429Z             },
2026-06-04T12:50:06.1764851Z             {
2026-06-04T12:50:06.1765427Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:50:06.1765873Z               "line": 99
2026-06-04T12:50:06.1766298Z             }
2026-06-04T12:50:06.1766715Z           ]
2026-06-04T12:50:06.1767123Z         }
2026-06-04T12:50:06.1767544Z       }
2026-06-04T12:50:06.1767951Z     },
2026-06-04T12:50:06.1768351Z     {
2026-06-04T12:50:06.1768798Z       "id": "REQ-MSG-2",
2026-06-04T12:50:06.1770351Z       "title": "spt binary CLI surface: send/ring/ready/poll/list/stop/whoami, stable arg shapes + exit codes",
2026-06-04T12:50:06.1770854Z       "requiredStages": [
2026-06-04T12:50:06.1771293Z         "impl",
2026-06-04T12:50:06.1771739Z         "unit"
2026-06-04T12:50:06.1772169Z       ],
2026-06-04T12:50:06.1772623Z       "stages": {
2026-06-04T12:50:06.1773052Z         "doc": {
2026-06-04T12:50:06.1773680Z           "complete": false,
2026-06-04T12:50:06.1774138Z           "evidence": []
2026-06-04T12:50:06.1774575Z         },
2026-06-04T12:50:06.1775018Z         "impl": {
2026-06-04T12:50:06.1775482Z           "complete": true,
2026-06-04T12:50:06.1775938Z           "evidence": [
2026-06-04T12:50:06.1776354Z             {
2026-06-04T12:50:06.1776903Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1777347Z               "line": 11
2026-06-04T12:50:06.1777764Z             },
2026-06-04T12:50:06.1778186Z             {
2026-06-04T12:50:06.1778726Z               "path": "crates/spt/src/main.rs",
2026-06-04T12:50:06.1779205Z               "line": 8
2026-06-04T12:50:06.1779631Z             }
2026-06-04T12:50:06.1780046Z           ]
2026-06-04T12:50:06.1780468Z         },
2026-06-04T12:50:06.1780893Z         "int": {
2026-06-04T12:50:06.1781374Z           "complete": false,
2026-06-04T12:50:06.1781825Z           "evidence": []
2026-06-04T12:50:06.1782245Z         },
2026-06-04T12:50:06.1782679Z         "unit": {
2026-06-04T12:50:06.1783144Z           "complete": true,
2026-06-04T12:50:06.1783605Z           "evidence": [
2026-06-04T12:50:06.1784025Z             {
2026-06-04T12:50:06.1784570Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1785020Z               "line": 1100
2026-06-04T12:50:06.1785455Z             },
2026-06-04T12:50:06.1785864Z             {
2026-06-04T12:50:06.1786416Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1786886Z               "line": 1213
2026-06-04T12:50:06.1787302Z             },
2026-06-04T12:50:06.1787725Z             {
2026-06-04T12:50:06.1788258Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1788711Z               "line": 1222
2026-06-04T12:50:06.1789132Z             },
2026-06-04T12:50:06.1789596Z             {
2026-06-04T12:50:06.1790138Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1790584Z               "line": 1234
2026-06-04T12:50:06.1791008Z             }
2026-06-04T12:50:06.1791448Z           ]
2026-06-04T12:50:06.1791873Z         }
2026-06-04T12:50:06.1792297Z       }
2026-06-04T12:50:06.1792717Z     },
2026-06-04T12:50:06.1793131Z     {
2026-06-04T12:50:06.1793576Z       "id": "REQ-MSG-3",
2026-06-04T12:50:06.1795778Z       "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown",
2026-06-04T12:50:06.1796271Z       "requiredStages": [
2026-06-04T12:50:06.1796691Z         "impl",
2026-06-04T12:50:06.1797099Z         "unit",
2026-06-04T12:50:06.1797506Z         "int"
2026-06-04T12:50:06.1797907Z       ],
2026-06-04T12:50:06.1798312Z       "stages": {
2026-06-04T12:50:06.1798720Z         "doc": {
2026-06-04T12:50:06.1799214Z           "complete": false,
2026-06-04T12:50:06.1799678Z           "evidence": []
2026-06-04T12:50:06.1800090Z         },
2026-06-04T12:50:06.1800526Z         "impl": {
2026-06-04T12:50:06.1800995Z           "complete": true,
2026-06-04T12:50:06.1801450Z           "evidence": [
2026-06-04T12:50:06.1801872Z             {
2026-06-04T12:50:06.1802657Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:50:06.1803111Z               "line": 19
2026-06-04T12:50:06.1803524Z             },
2026-06-04T12:50:06.1803947Z             {
2026-06-04T12:50:06.1804536Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.1804988Z               "line": 21
2026-06-04T12:50:06.1805430Z             },
2026-06-04T12:50:06.1805844Z             {
2026-06-04T12:50:06.1806431Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.1806886Z               "line": 48
2026-06-04T12:50:06.1807324Z             },
2026-06-04T12:50:06.1807762Z             {
2026-06-04T12:50:06.1808340Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.1808810Z               "line": 106
2026-06-04T12:50:06.1809277Z             }
2026-06-04T12:50:06.1809717Z           ]
2026-06-04T12:50:06.1810139Z         },
2026-06-04T12:50:06.1810707Z         "int": {
2026-06-04T12:50:06.1811177Z           "complete": true,
2026-06-04T12:50:06.1811652Z           "evidence": [
2026-06-04T12:50:06.1812089Z             {
2026-06-04T12:50:06.1812806Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:50:06.1813270Z               "line": 10
2026-06-04T12:50:06.1813702Z             },
2026-06-04T12:50:06.1814138Z             {
2026-06-04T12:50:06.1814863Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:50:06.1815321Z               "line": 66
2026-06-04T12:50:06.1815761Z             }
2026-06-04T12:50:06.1816185Z           ]
2026-06-04T12:50:06.1816626Z         },
2026-06-04T12:50:06.1817066Z         "unit": {
2026-06-04T12:50:06.1817542Z           "complete": true,
2026-06-04T12:50:06.1818011Z           "evidence": [
2026-06-04T12:50:06.1818445Z             {
2026-06-04T12:50:06.1819030Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.1819533Z               "line": 160
2026-06-04T12:50:06.1819988Z             },
2026-06-04T12:50:06.1820416Z             {
2026-06-04T12:50:06.1821013Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.1821478Z               "line": 179
2026-06-04T12:50:06.1821907Z             },
2026-06-04T12:50:06.1822340Z             {
2026-06-04T12:50:06.1822915Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:50:06.1823380Z               "line": 198
2026-06-04T12:50:06.1823817Z             }
2026-06-04T12:50:06.1824247Z           ]
2026-06-04T12:50:06.1824682Z         }
2026-06-04T12:50:06.1825107Z       }
2026-06-04T12:50:06.1825534Z     },
2026-06-04T12:50:06.1825952Z     {
2026-06-04T12:50:06.1826420Z       "id": "REQ-NET-1",
2026-06-04T12:50:06.1827413Z       "title": "WAN messaging first-class, behind default-on net feature flag",
2026-06-04T12:50:06.1827909Z       "requiredStages": [
2026-06-04T12:50:06.1828358Z         "impl",
2026-06-04T12:50:06.1828787Z         "unit"
2026-06-04T12:50:06.1829264Z       ],
2026-06-04T12:50:06.1829708Z       "stages": {
2026-06-04T12:50:06.1830150Z         "doc": {
2026-06-04T12:50:06.1830634Z           "complete": false,
2026-06-04T12:50:06.1831092Z           "evidence": []
2026-06-04T12:50:06.1831510Z         },
2026-06-04T12:50:06.1831940Z         "impl": {
2026-06-04T12:50:06.1832412Z           "complete": true,
2026-06-04T12:50:06.1832851Z           "evidence": [
2026-06-04T12:50:06.1833276Z             {
2026-06-04T12:50:06.1833920Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.1834387Z               "line": 52
2026-06-04T12:50:06.1834828Z             },
2026-06-04T12:50:06.1838887Z             {
2026-06-04T12:50:06.1841406Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.1841974Z               "line": 448
2026-06-04T12:50:06.1842428Z             },
2026-06-04T12:50:06.1842850Z             {
2026-06-04T12:50:06.1843447Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T12:50:06.1843961Z               "line": 69
2026-06-04T12:50:06.1844387Z             },
2026-06-04T12:50:06.1845127Z             {
2026-06-04T12:50:06.1845782Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1846236Z               "line": 65
2026-06-04T12:50:06.1846665Z             },
2026-06-04T12:50:06.1847086Z             {
2026-06-04T12:50:06.1847731Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1848185Z               "line": 122
2026-06-04T12:50:06.1848616Z             },
2026-06-04T12:50:06.1849033Z             {
2026-06-04T12:50:06.1849747Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1850205Z               "line": 138
2026-06-04T12:50:06.1850630Z             },
2026-06-04T12:50:06.1851060Z             {
2026-06-04T12:50:06.1851705Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1852169Z               "line": 153
2026-06-04T12:50:06.1852592Z             },
2026-06-04T12:50:06.1853175Z             {
2026-06-04T12:50:06.1853850Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1854334Z               "line": 207
2026-06-04T12:50:06.1854782Z             },
2026-06-04T12:50:06.1855217Z             {
2026-06-04T12:50:06.1855874Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1856334Z               "line": 242
2026-06-04T12:50:06.1856784Z             },
2026-06-04T12:50:06.1857225Z             {
2026-06-04T12:50:06.1857872Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1858332Z               "line": 248
2026-06-04T12:50:06.1858753Z             },
2026-06-04T12:50:06.1859220Z             {
2026-06-04T12:50:06.1859877Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1860358Z               "line": 254
2026-06-04T12:50:06.1860804Z             },
2026-06-04T12:50:06.1861233Z             {
2026-06-04T12:50:06.1861889Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1862362Z               "line": 270
2026-06-04T12:50:06.1862812Z             },
2026-06-04T12:50:06.1863250Z             {
2026-06-04T12:50:06.1863909Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1864390Z               "line": 290
2026-06-04T12:50:06.1864822Z             },
2026-06-04T12:50:06.1865261Z             {
2026-06-04T12:50:06.1865901Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:50:06.1866372Z               "line": 35
2026-06-04T12:50:06.1866817Z             },
2026-06-04T12:50:06.1867255Z             {
2026-06-04T12:50:06.1867892Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:50:06.1868348Z               "line": 82
2026-06-04T12:50:06.1868789Z             },
2026-06-04T12:50:06.1869251Z             {
2026-06-04T12:50:06.1869866Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:06.1870336Z               "line": 129
2026-06-04T12:50:06.1870776Z             },
2026-06-04T12:50:06.1871226Z             {
2026-06-04T12:50:06.1871771Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.1872246Z               "line": 600
2026-06-04T12:50:06.1872684Z             },
2026-06-04T12:50:06.1873118Z             {
2026-06-04T12:50:06.1873681Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:50:06.1874121Z               "line": 17
2026-06-04T12:50:06.1874543Z             }
2026-06-04T12:50:06.1874956Z           ]
2026-06-04T12:50:06.1875378Z         },
2026-06-04T12:50:06.1875799Z         "int": {
2026-06-04T12:50:06.1876268Z           "complete": true,
2026-06-04T12:50:06.1876722Z           "evidence": [
2026-06-04T12:50:06.1877137Z             {
2026-06-04T12:50:06.1877796Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.1878239Z               "line": 314
2026-06-04T12:50:06.1878660Z             }
2026-06-04T12:50:06.1879071Z           ]
2026-06-04T12:50:06.1879509Z         },
2026-06-04T12:50:06.1879929Z         "unit": {
2026-06-04T12:50:06.1880385Z           "complete": true,
2026-06-04T12:50:06.1880815Z           "evidence": [
2026-06-04T12:50:06.1881360Z             {
2026-06-04T12:50:06.1881981Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.1882403Z               "line": 500
2026-06-04T12:50:06.1882809Z             },
2026-06-04T12:50:06.1883207Z             {
2026-06-04T12:50:06.1883812Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.1884249Z               "line": 529
2026-06-04T12:50:06.1884642Z             },
2026-06-04T12:50:06.1885042Z             {
2026-06-04T12:50:06.1885672Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.1886109Z               "line": 517
2026-06-04T12:50:06.1886515Z             },
2026-06-04T12:50:06.1886903Z             {
2026-06-04T12:50:06.1887514Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T12:50:06.1887941Z               "line": 142
2026-06-04T12:50:06.1888344Z             },
2026-06-04T12:50:06.1888884Z             {
2026-06-04T12:50:06.1889556Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1890020Z               "line": 344
2026-06-04T12:50:06.1890415Z             },
2026-06-04T12:50:06.1890811Z             {
2026-06-04T12:50:06.1891427Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1891867Z               "line": 358
2026-06-04T12:50:06.1892260Z             },
2026-06-04T12:50:06.1892663Z             {
2026-06-04T12:50:06.1893279Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1893701Z               "line": 377
2026-06-04T12:50:06.1894106Z             },
2026-06-04T12:50:06.1894497Z             {
2026-06-04T12:50:06.1895095Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:50:06.1895524Z               "line": 106
2026-06-04T12:50:06.1895929Z             },
2026-06-04T12:50:06.1896331Z             {
2026-06-04T12:50:06.1896920Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:50:06.1897366Z               "line": 148
2026-06-04T12:50:06.1897774Z             },
2026-06-04T12:50:06.1898180Z             {
2026-06-04T12:50:06.1898742Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:50:06.1899212Z               "line": 445
2026-06-04T12:50:06.1899621Z             },
2026-06-04T12:50:06.1900012Z             {
2026-06-04T12:50:06.1900558Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:50:06.1900986Z               "line": 218
2026-06-04T12:50:06.1901389Z             },
2026-06-04T12:50:06.1901782Z             {
2026-06-04T12:50:06.1902319Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:50:06.1902748Z               "line": 306
2026-06-04T12:50:06.1903148Z             }
2026-06-04T12:50:06.1903544Z           ]
2026-06-04T12:50:06.1903931Z         }
2026-06-04T12:50:06.1904337Z       }
2026-06-04T12:50:06.1904729Z     },
2026-06-04T12:50:06.1905113Z     {
2026-06-04T12:50:06.1905561Z       "id": "REQ-NET-2",
2026-06-04T12:50:06.1906512Z       "title": "n0 relay default + self-host knob + plain-language disclosure",
2026-06-04T12:50:06.1906991Z       "requiredStages": [
2026-06-04T12:50:06.1907391Z         "impl"
2026-06-04T12:50:06.1907792Z       ],
2026-06-04T12:50:06.1908207Z       "stages": {
2026-06-04T12:50:06.1908604Z         "doc": {
2026-06-04T12:50:06.1909057Z           "complete": false,
2026-06-04T12:50:06.1909521Z           "evidence": []
2026-06-04T12:50:06.1909926Z         },
2026-06-04T12:50:06.1910325Z         "impl": {
2026-06-04T12:50:06.1910771Z           "complete": true,
2026-06-04T12:50:06.1911202Z           "evidence": [
2026-06-04T12:50:06.1911595Z             {
2026-06-04T12:50:06.1912191Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:06.1912614Z               "line": 49
2026-06-04T12:50:06.1913016Z             },
2026-06-04T12:50:06.1913406Z             {
2026-06-04T12:50:06.1914035Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1914478Z               "line": 39
2026-06-04T12:50:06.1914871Z             },
2026-06-04T12:50:06.1915474Z             {
2026-06-04T12:50:06.1916087Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1916519Z               "line": 49
2026-06-04T12:50:06.1916912Z             },
2026-06-04T12:50:06.1917309Z             {
2026-06-04T12:50:06.1917926Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1922495Z               "line": 122
2026-06-04T12:50:06.1923036Z             },
2026-06-04T12:50:06.1923460Z             {
2026-06-04T12:50:06.1924094Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1924521Z               "line": 138
2026-06-04T12:50:06.1924926Z             },
2026-06-04T12:50:06.1925323Z             {
2026-06-04T12:50:06.1925936Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:50:06.1926375Z               "line": 153
2026-06-04T12:50:06.1926771Z             }
2026-06-04T12:50:06.1927453Z           ]
2026-06-04T12:50:06.1927865Z         },
2026-06-04T12:50:06.1928315Z         "int": {
2026-06-04T12:50:06.1928791Z           "complete": false,
2026-06-04T12:50:06.1929304Z           "evidence": []
2026-06-04T12:50:06.1929725Z         },
2026-06-04T12:50:06.1930153Z         "unit": {
2026-06-04T12:50:06.1930621Z           "complete": true,
2026-06-04T12:50:06.1931103Z           "evidence": [
2026-06-04T12:50:06.1931528Z             {
2026-06-04T12:50:06.1932163Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:06.1932613Z               "line": 321
2026-06-04T12:50:06.1933039Z             }
2026-06-04T12:50:06.1933454Z           ]
2026-06-04T12:50:06.1933874Z         }
2026-06-04T12:50:06.1934290Z       }
2026-06-04T12:50:06.1934701Z     },
2026-06-04T12:50:06.1935115Z     {
2026-06-04T12:50:06.1935564Z       "id": "REQ-NET-3",
2026-06-04T12:50:06.1936474Z       "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync",
2026-06-04T12:50:06.1937032Z       "requiredStages": [
2026-06-04T12:50:06.1937560Z         "impl",
2026-06-04T12:50:06.1938019Z         "unit"
2026-06-04T12:50:06.1938436Z       ],
2026-06-04T12:50:06.1938874Z       "stages": {
2026-06-04T12:50:06.1939351Z         "doc": {
2026-06-04T12:50:06.1939833Z           "complete": false,
2026-06-04T12:50:06.1940287Z           "evidence": []
2026-06-04T12:50:06.1940712Z         },
2026-06-04T12:50:06.1941141Z         "impl": {
2026-06-04T12:50:06.1941608Z           "complete": true,
2026-06-04T12:50:06.1942057Z           "evidence": [
2026-06-04T12:50:06.1942475Z             {
2026-06-04T12:50:06.1943084Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1943530Z               "line": 39
2026-06-04T12:50:06.1943962Z             },
2026-06-04T12:50:06.1944375Z             {
2026-06-04T12:50:06.1944970Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1945428Z               "line": 159
2026-06-04T12:50:06.1945847Z             },
2026-06-04T12:50:06.1946290Z             {
2026-06-04T12:50:06.1946864Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:50:06.1947313Z               "line": 290
2026-06-04T12:50:06.1947709Z             },
2026-06-04T12:50:06.1948104Z             {
2026-06-04T12:50:06.1948690Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:50:06.1949118Z               "line": 36
2026-06-04T12:50:06.1949560Z             },
2026-06-04T12:50:06.1949960Z             {
2026-06-04T12:50:06.1950617Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1951044Z               "line": 135
2026-06-04T12:50:06.1951444Z             },
2026-06-04T12:50:06.1951845Z             {
2026-06-04T12:50:06.1952480Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1952919Z               "line": 172
2026-06-04T12:50:06.1953314Z             },
2026-06-04T12:50:06.1953713Z             {
2026-06-04T12:50:06.1954342Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1954801Z               "line": 184
2026-06-04T12:50:06.1955430Z             },
2026-06-04T12:50:06.1955824Z             {
2026-06-04T12:50:06.1956467Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1956893Z               "line": 222
2026-06-04T12:50:06.1957302Z             },
2026-06-04T12:50:06.1957694Z             {
2026-06-04T12:50:06.1958337Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1958771Z               "line": 237
2026-06-04T12:50:06.1959210Z             },
2026-06-04T12:50:06.1959613Z             {
2026-06-04T12:50:06.1960244Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1960681Z               "line": 273
2026-06-04T12:50:06.1961095Z             },
2026-06-04T12:50:06.1961496Z             {
2026-06-04T12:50:06.1962139Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1962564Z               "line": 314
2026-06-04T12:50:06.1963114Z             },
2026-06-04T12:50:06.1963507Z             {
2026-06-04T12:50:06.1964158Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.1964593Z               "line": 327
2026-06-04T12:50:06.1964987Z             },
2026-06-04T12:50:06.1965382Z             {
2026-06-04T12:50:06.1965988Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:06.1966423Z               "line": 29
2026-06-04T12:50:06.1966821Z             },
2026-06-04T12:50:06.1967217Z             {
2026-06-04T12:50:06.1967824Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:06.1968239Z               "line": 70
2026-06-04T12:50:06.1968637Z             },
2026-06-04T12:50:06.1969031Z             {
2026-06-04T12:50:06.1969694Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:06.1970122Z               "line": 121
2026-06-04T12:50:06.1970529Z             }
2026-06-04T12:50:06.1970937Z           ]
2026-06-04T12:50:06.1971333Z         },
2026-06-04T12:50:06.1971753Z         "int": {
2026-06-04T12:50:06.1972193Z           "complete": false,
2026-06-04T12:50:06.1972642Z           "evidence": []
2026-06-04T12:50:06.1973033Z         },
2026-06-04T12:50:06.1973442Z         "unit": {
2026-06-04T12:50:06.1973886Z           "complete": true,
2026-06-04T12:50:06.1974309Z           "evidence": [
2026-06-04T12:50:06.1974707Z             {
2026-06-04T12:50:06.1975297Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:50:06.1975729Z               "line": 203
2026-06-04T12:50:06.1976127Z             },
2026-06-04T12:50:06.1976526Z             {
2026-06-04T12:50:06.1977125Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:50:06.1977551Z               "line": 303
2026-06-04T12:50:06.1977961Z             },
2026-06-04T12:50:06.1978352Z             {
2026-06-04T12:50:06.1978953Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:50:06.1979420Z               "line": 399
2026-06-04T12:50:06.1979838Z             },
2026-06-04T12:50:06.1980241Z             {
2026-06-04T12:50:06.1980816Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:50:06.1981259Z               "line": 93
2026-06-04T12:50:06.1981652Z             },
2026-06-04T12:50:06.1982049Z             {
2026-06-04T12:50:06.1982617Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:50:06.1983055Z               "line": 131
2026-06-04T12:50:06.1983458Z             },
2026-06-04T12:50:06.1983843Z             {
2026-06-04T12:50:06.1984459Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:06.1984882Z               "line": 308
2026-06-04T12:50:06.1985288Z             },
2026-06-04T12:50:06.1985677Z             {
2026-06-04T12:50:06.1986314Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:06.1986748Z               "line": 345
2026-06-04T12:50:06.1987142Z             },
2026-06-04T12:50:06.1987534Z             {
2026-06-04T12:50:06.1988140Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:50:06.1988588Z               "line": 469
2026-06-04T12:50:06.1989245Z             }
2026-06-04T12:50:06.1989706Z           ]
2026-06-04T12:50:06.1990128Z         }
2026-06-04T12:50:06.1990524Z       }
2026-06-04T12:50:06.1990915Z     },
2026-06-04T12:50:06.1991296Z     {
2026-06-04T12:50:06.1991769Z       "id": "REQ-NODE-IDENTITY",
2026-06-04T12:50:06.1993032Z       "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex",
2026-06-04T12:50:06.1993502Z       "requiredStages": [
2026-06-04T12:50:06.1993912Z         "impl",
2026-06-04T12:50:06.1994311Z         "unit"
2026-06-04T12:50:06.1994716Z       ],
2026-06-04T12:50:06.1995127Z       "stages": {
2026-06-04T12:50:06.1995539Z         "doc": {
2026-06-04T12:50:06.1995985Z           "complete": false,
2026-06-04T12:50:06.1996421Z           "evidence": []
2026-06-04T12:50:06.1996819Z         },
2026-06-04T12:50:06.1997229Z         "impl": {
2026-06-04T12:50:06.1997676Z           "complete": true,
2026-06-04T12:50:06.1998252Z           "evidence": [
2026-06-04T12:50:06.2002704Z             {
2026-06-04T12:50:06.2003457Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2003902Z               "line": 60
2026-06-04T12:50:06.2004308Z             },
2026-06-04T12:50:06.2004706Z             {
2026-06-04T12:50:06.2005315Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2005741Z               "line": 68
2026-06-04T12:50:06.2006152Z             },
2026-06-04T12:50:06.2006556Z             {
2026-06-04T12:50:06.2007159Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2007590Z               "line": 86
2026-06-04T12:50:06.2007986Z             },
2026-06-04T12:50:06.2008391Z             {
2026-06-04T12:50:06.2008991Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2009499Z               "line": 120
2026-06-04T12:50:06.2009913Z             },
2026-06-04T12:50:06.2010313Z             {
2026-06-04T12:50:06.2010961Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2011401Z               "line": 127
2026-06-04T12:50:06.2011828Z             },
2026-06-04T12:50:06.2012236Z             {
2026-06-04T12:50:06.2012840Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2013273Z               "line": 143
2026-06-04T12:50:06.2013670Z             },
2026-06-04T12:50:06.2014067Z             {
2026-06-04T12:50:06.2014643Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:50:06.2015078Z               "line": 16
2026-06-04T12:50:06.2015477Z             }
2026-06-04T12:50:06.2015876Z           ]
2026-06-04T12:50:06.2016274Z         },
2026-06-04T12:50:06.2016667Z         "int": {
2026-06-04T12:50:06.2017119Z           "complete": false,
2026-06-04T12:50:06.2017544Z           "evidence": []
2026-06-04T12:50:06.2017940Z         },
2026-06-04T12:50:06.2018364Z         "unit": {
2026-06-04T12:50:06.2018843Z           "complete": true,
2026-06-04T12:50:06.2019340Z           "evidence": [
2026-06-04T12:50:06.2019745Z             {
2026-06-04T12:50:06.2020371Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2020795Z               "line": 199
2026-06-04T12:50:06.2021198Z             },
2026-06-04T12:50:06.2021587Z             {
2026-06-04T12:50:06.2022190Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2022622Z               "line": 218
2026-06-04T12:50:06.2023014Z             },
2026-06-04T12:50:06.2023411Z             {
2026-06-04T12:50:06.2024013Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2024453Z               "line": 232
2026-06-04T12:50:06.2024848Z             },
2026-06-04T12:50:06.2025252Z             {
2026-06-04T12:50:06.2025856Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:50:06.2026279Z               "line": 248
2026-06-04T12:50:06.2026680Z             },
2026-06-04T12:50:06.2027070Z             {
2026-06-04T12:50:06.2027660Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:50:06.2028413Z               "line": 125
2026-06-04T12:50:06.2028823Z             },
2026-06-04T12:50:06.2029266Z             {
2026-06-04T12:50:06.2029848Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:50:06.2030289Z               "line": 141
2026-06-04T12:50:06.2030689Z             },
2026-06-04T12:50:06.2031152Z             {
2026-06-04T12:50:06.2031720Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:50:06.2032155Z               "line": 153
2026-06-04T12:50:06.2032558Z             }
2026-06-04T12:50:06.2032953Z           ]
2026-06-04T12:50:06.2033359Z         }
2026-06-04T12:50:06.2033753Z       }
2026-06-04T12:50:06.2034149Z     },
2026-06-04T12:50:06.2034538Z     {
2026-06-04T12:50:06.2034994Z       "id": "REQ-NOTIF-1",
2026-06-04T12:50:06.2037112Z       "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts",
2026-06-04T12:50:06.2037784Z       "requiredStages": [
2026-06-04T12:50:06.2038242Z         "impl",
2026-06-04T12:50:06.2038661Z         "unit"
2026-06-04T12:50:06.2039088Z       ],
2026-06-04T12:50:06.2039571Z       "stages": {
2026-06-04T12:50:06.2040018Z         "doc": {
2026-06-04T12:50:06.2040491Z           "complete": false,
2026-06-04T12:50:06.2040941Z           "evidence": []
2026-06-04T12:50:06.2041369Z         },
2026-06-04T12:50:06.2041799Z         "impl": {
2026-06-04T12:50:06.2042268Z           "complete": true,
2026-06-04T12:50:06.2042707Z           "evidence": [
2026-06-04T12:50:06.2043138Z             {
2026-06-04T12:50:06.2043782Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:50:06.2044229Z               "line": 412
2026-06-04T12:50:06.2044652Z             },
2026-06-04T12:50:06.2045067Z             {
2026-06-04T12:50:06.2045674Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2046126Z               "line": 30
2026-06-04T12:50:06.2046565Z             },
2026-06-04T12:50:06.2046991Z             {
2026-06-04T12:50:06.2047609Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2048061Z               "line": 62
2026-06-04T12:50:06.2048478Z             },
2026-06-04T12:50:06.2048905Z             {
2026-06-04T12:50:06.2049553Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2049999Z               "line": 83
2026-06-04T12:50:06.2050424Z             },
2026-06-04T12:50:06.2050843Z             {
2026-06-04T12:50:06.2051447Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2051893Z               "line": 97
2026-06-04T12:50:06.2052321Z             },
2026-06-04T12:50:06.2052737Z             {
2026-06-04T12:50:06.2053331Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2053788Z               "line": 126
2026-06-04T12:50:06.2054209Z             },
2026-06-04T12:50:06.2054631Z             {
2026-06-04T12:50:06.2055227Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2055700Z               "line": 159
2026-06-04T12:50:06.2056138Z             },
2026-06-04T12:50:06.2056554Z             {
2026-06-04T12:50:06.2057160Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2057610Z               "line": 179
2026-06-04T12:50:06.2058034Z             },
2026-06-04T12:50:06.2058450Z             {
2026-06-04T12:50:06.2059056Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2059558Z               "line": 239
2026-06-04T12:50:06.2059979Z             },
2026-06-04T12:50:06.2060402Z             {
2026-06-04T12:50:06.2060992Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2061448Z               "line": 287
2026-06-04T12:50:06.2061870Z             },
2026-06-04T12:50:06.2062302Z             {
2026-06-04T12:50:06.2062946Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2063384Z               "line": 24
2026-06-04T12:50:06.2063823Z             },
2026-06-04T12:50:06.2064241Z             {
2026-06-04T12:50:06.2065053Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2065492Z               "line": 34
2026-06-04T12:50:06.2065919Z             },
2026-06-04T12:50:06.2066346Z             {
2026-06-04T12:50:06.2066983Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2067433Z               "line": 55
2026-06-04T12:50:06.2067853Z             },
2026-06-04T12:50:06.2068282Z             {
2026-06-04T12:50:06.2068917Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2069412Z               "line": 76
2026-06-04T12:50:06.2069838Z             },
2026-06-04T12:50:06.2070246Z             {
2026-06-04T12:50:06.2070898Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2071344Z               "line": 88
2026-06-04T12:50:06.2071771Z             },
2026-06-04T12:50:06.2072192Z             {
2026-06-04T12:50:06.2072826Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:50:06.2073423Z               "line": 41
2026-06-04T12:50:06.2073857Z             },
2026-06-04T12:50:06.2074281Z             {
2026-06-04T12:50:06.2074907Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.2075358Z               "line": 94
2026-06-04T12:50:06.2075789Z             },
2026-06-04T12:50:06.2076206Z             {
2026-06-04T12:50:06.2076825Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:50:06.2077266Z               "line": 20
2026-06-04T12:50:06.2077694Z             },
2026-06-04T12:50:06.2078114Z             {
2026-06-04T12:50:06.2078735Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:50:06.2079229Z               "line": 30
2026-06-04T12:50:06.2079650Z             },
2026-06-04T12:50:06.2080072Z             {
2026-06-04T12:50:06.2080675Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:50:06.2084868Z               "line": 50
2026-06-04T12:50:06.2085429Z             },
2026-06-04T12:50:06.2085839Z             {
2026-06-04T12:50:06.2086437Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2086863Z               "line": 28
2026-06-04T12:50:06.2087267Z             },
2026-06-04T12:50:06.2087660Z             {
2026-06-04T12:50:06.2088235Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2088653Z               "line": 126
2026-06-04T12:50:06.2089051Z             },
2026-06-04T12:50:06.2089550Z             {
2026-06-04T12:50:06.2090120Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2090552Z               "line": 161
2026-06-04T12:50:06.2090944Z             },
2026-06-04T12:50:06.2091339Z             {
2026-06-04T12:50:06.2091908Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2092337Z               "line": 197
2026-06-04T12:50:06.2092734Z             },
2026-06-04T12:50:06.2093121Z             {
2026-06-04T12:50:06.2093690Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2094134Z               "line": 208
2026-06-04T12:50:06.2094542Z             },
2026-06-04T12:50:06.2094931Z             {
2026-06-04T12:50:06.2095501Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2095930Z               "line": 231
2026-06-04T12:50:06.2096330Z             },
2026-06-04T12:50:06.2096730Z             {
2026-06-04T12:50:06.2097291Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2097731Z               "line": 251
2026-06-04T12:50:06.2098121Z             },
2026-06-04T12:50:06.2098520Z             {
2026-06-04T12:50:06.2099129Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2099585Z               "line": 63
2026-06-04T12:50:06.2099988Z             }
2026-06-04T12:50:06.2100375Z           ]
2026-06-04T12:50:06.2100768Z         },
2026-06-04T12:50:06.2101160Z         "int": {
2026-06-04T12:50:06.2101604Z           "complete": true,
2026-06-04T12:50:06.2102045Z           "evidence": [
2026-06-04T12:50:06.2102436Z             {
2026-06-04T12:50:06.2103348Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.2103794Z               "line": 265
2026-06-04T12:50:06.2104222Z             },
2026-06-04T12:50:06.2104636Z             {
2026-06-04T12:50:06.2105296Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T12:50:06.2105749Z               "line": 102
2026-06-04T12:50:06.2106162Z             }
2026-06-04T12:50:06.2106581Z           ]
2026-06-04T12:50:06.2106987Z         },
2026-06-04T12:50:06.2107414Z         "unit": {
2026-06-04T12:50:06.2107871Z           "complete": true,
2026-06-04T12:50:06.2108319Z           "evidence": [
2026-06-04T12:50:06.2108743Z             {
2026-06-04T12:50:06.2109377Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2109829Z               "line": 362
2026-06-04T12:50:06.2110240Z             },
2026-06-04T12:50:06.2110663Z             {
2026-06-04T12:50:06.2112297Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2113091Z               "line": 400
2026-06-04T12:50:06.2113661Z             },
2026-06-04T12:50:06.2114192Z             {
2026-06-04T12:50:06.2115015Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2115470Z               "line": 427
2026-06-04T12:50:06.2115917Z             },
2026-06-04T12:50:06.2116341Z             {
2026-06-04T12:50:06.2116941Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2117393Z               "line": 448
2026-06-04T12:50:06.2117809Z             },
2026-06-04T12:50:06.2118235Z             {
2026-06-04T12:50:06.2118832Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2119376Z               "line": 501
2026-06-04T12:50:06.2119812Z             },
2026-06-04T12:50:06.2120229Z             {
2026-06-04T12:50:06.2120831Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2121276Z               "line": 540
2026-06-04T12:50:06.2121736Z             },
2026-06-04T12:50:06.2122154Z             {
2026-06-04T12:50:06.2122778Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2123230Z               "line": 632
2026-06-04T12:50:06.2123651Z             },
2026-06-04T12:50:06.2124075Z             {
2026-06-04T12:50:06.2124716Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2125175Z               "line": 133
2026-06-04T12:50:06.2125594Z             },
2026-06-04T12:50:06.2126016Z             {
2026-06-04T12:50:06.2126656Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2127107Z               "line": 208
2026-06-04T12:50:06.2127539Z             },
2026-06-04T12:50:06.2127957Z             {
2026-06-04T12:50:06.2128597Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:50:06.2129047Z               "line": 227
2026-06-04T12:50:06.2129513Z             },
2026-06-04T12:50:06.2129938Z             {
2026-06-04T12:50:06.2130592Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.2131058Z               "line": 328
2026-06-04T12:50:06.2131478Z             },
2026-06-04T12:50:06.2131898Z             {
2026-06-04T12:50:06.2132530Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:50:06.2132986Z               "line": 357
2026-06-04T12:50:06.2133414Z             },
2026-06-04T12:50:06.2133826Z             {
2026-06-04T12:50:06.2134502Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T12:50:06.2134953Z               "line": 112
2026-06-04T12:50:06.2135380Z             },
2026-06-04T12:50:06.2135799Z             {
2026-06-04T12:50:06.2136408Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:50:06.2136863Z               "line": 72
2026-06-04T12:50:06.2137279Z             },
2026-06-04T12:50:06.2137693Z             {
2026-06-04T12:50:06.2138302Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:50:06.2138773Z               "line": 94
2026-06-04T12:50:06.2139247Z             },
2026-06-04T12:50:06.2139957Z             {
2026-06-04T12:50:06.2140551Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2140992Z               "line": 365
2026-06-04T12:50:06.2141416Z             },
2026-06-04T12:50:06.2141832Z             {
2026-06-04T12:50:06.2142425Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2142877Z               "line": 396
2026-06-04T12:50:06.2143294Z             },
2026-06-04T12:50:06.2143716Z             {
2026-06-04T12:50:06.2144301Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2144754Z               "line": 410
2026-06-04T12:50:06.2145168Z             },
2026-06-04T12:50:06.2145592Z             {
2026-06-04T12:50:06.2146181Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2146626Z               "line": 441
2026-06-04T12:50:06.2147055Z             },
2026-06-04T12:50:06.2147467Z             {
2026-06-04T12:50:06.2148217Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2148682Z               "line": 458
2026-06-04T12:50:06.2149106Z             },
2026-06-04T12:50:06.2149584Z             {
2026-06-04T12:50:06.2150173Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2150632Z               "line": 483
2026-06-04T12:50:06.2151049Z             },
2026-06-04T12:50:06.2151470Z             {
2026-06-04T12:50:06.2152059Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:50:06.2152515Z               "line": 507
2026-06-04T12:50:06.2152945Z             },
2026-06-04T12:50:06.2153360Z             {
2026-06-04T12:50:06.2153979Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2154429Z               "line": 313
2026-06-04T12:50:06.2154861Z             }
2026-06-04T12:50:06.2155275Z           ]
2026-06-04T12:50:06.2155694Z         }
2026-06-04T12:50:06.2156109Z       }
2026-06-04T12:50:06.2156521Z     },
2026-06-04T12:50:06.2156953Z     {
2026-06-04T12:50:06.2157406Z       "id": "REQ-NOTIF-2",
2026-06-04T12:50:06.2158915Z       "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)",
2026-06-04T12:50:06.2159428Z       "requiredStages": [
2026-06-04T12:50:06.2159866Z         "doc",
2026-06-04T12:50:06.2160296Z         "impl",
2026-06-04T12:50:06.2160716Z         "unit"
2026-06-04T12:50:06.2161135Z       ],
2026-06-04T12:50:06.2161568Z       "stages": {
2026-06-04T12:50:06.2161996Z         "doc": {
2026-06-04T12:50:06.2162457Z           "complete": true,
2026-06-04T12:50:06.2162907Z           "evidence": [
2026-06-04T12:50:06.2163330Z             {
2026-06-04T12:50:06.2163831Z               "path": "docs/MANIFEST.md",
2026-06-04T12:50:06.2168654Z               "line": 62
2026-06-04T12:50:06.2169288Z             }
2026-06-04T12:50:06.2169718Z           ]
2026-06-04T12:50:06.2170115Z         },
2026-06-04T12:50:06.2170554Z         "impl": {
2026-06-04T12:50:06.2171011Z           "complete": true,
2026-06-04T12:50:06.2171485Z           "evidence": [
2026-06-04T12:50:06.2171908Z             {
2026-06-04T12:50:06.2172503Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2172940Z               "line": 208
2026-06-04T12:50:06.2173342Z             },
2026-06-04T12:50:06.2173748Z             {
2026-06-04T12:50:06.2174341Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2174772Z               "line": 222
2026-06-04T12:50:06.2175181Z             },
2026-06-04T12:50:06.2175577Z             {
2026-06-04T12:50:06.2176202Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.2176632Z               "line": 125
2026-06-04T12:50:06.2177038Z             },
2026-06-04T12:50:06.2177443Z             {
2026-06-04T12:50:06.2178041Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2178479Z               "line": 72
2026-06-04T12:50:06.2178882Z             },
2026-06-04T12:50:06.2179329Z             {
2026-06-04T12:50:06.2179867Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2180586Z               "line": 383
2026-06-04T12:50:06.2181023Z             },
2026-06-04T12:50:06.2181441Z             {
2026-06-04T12:50:06.2181971Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2182395Z               "line": 415
2026-06-04T12:50:06.2182804Z             },
2026-06-04T12:50:06.2183208Z             {
2026-06-04T12:50:06.2183726Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2184156Z               "line": 481
2026-06-04T12:50:06.2184554Z             },
2026-06-04T12:50:06.2184964Z             {
2026-06-04T12:50:06.2185481Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2185919Z               "line": 517
2026-06-04T12:50:06.2186330Z             }
2026-06-04T12:50:06.2186724Z           ]
2026-06-04T12:50:06.2187129Z         },
2026-06-04T12:50:06.2187530Z         "int": {
2026-06-04T12:50:06.2187984Z           "complete": false,
2026-06-04T12:50:06.2188630Z           "evidence": []
2026-06-04T12:50:06.2189035Z         },
2026-06-04T12:50:06.2189509Z         "unit": {
2026-06-04T12:50:06.2189951Z           "complete": true,
2026-06-04T12:50:06.2190382Z           "evidence": [
2026-06-04T12:50:06.2190773Z             {
2026-06-04T12:50:06.2191365Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.2191790Z               "line": 590
2026-06-04T12:50:06.2192192Z             },
2026-06-04T12:50:06.2192592Z             {
2026-06-04T12:50:06.2193104Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2193535Z               "line": 1129
2026-06-04T12:50:06.2193930Z             },
2026-06-04T12:50:06.2194337Z             {
2026-06-04T12:50:06.2194846Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2195279Z               "line": 1151
2026-06-04T12:50:06.2195689Z             }
2026-06-04T12:50:06.2196084Z           ]
2026-06-04T12:50:06.2196479Z         }
2026-06-04T12:50:06.2196869Z       }
2026-06-04T12:50:06.2197284Z     },
2026-06-04T12:50:06.2197669Z     {
2026-06-04T12:50:06.2198121Z       "id": "REQ-PAIR-1",
2026-06-04T12:50:06.2198657Z       "title": "TOTP-seeded SPAKE2 pairing",
2026-06-04T12:50:06.2199104Z       "requiredStages": [
2026-06-04T12:50:06.2199557Z         "impl",
2026-06-04T12:50:06.2199955Z         "unit"
2026-06-04T12:50:06.2200357Z       ],
2026-06-04T12:50:06.2200762Z       "stages": {
2026-06-04T12:50:06.2201167Z         "doc": {
2026-06-04T12:50:06.2201608Z           "complete": false,
2026-06-04T12:50:06.2202047Z           "evidence": []
2026-06-04T12:50:06.2202446Z         },
2026-06-04T12:50:06.2202847Z         "impl": {
2026-06-04T12:50:06.2203291Z           "complete": true,
2026-06-04T12:50:06.2203711Z           "evidence": [
2026-06-04T12:50:06.2204111Z             {
2026-06-04T12:50:06.2204783Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.2205214Z               "line": 27
2026-06-04T12:50:06.2205612Z             },
2026-06-04T12:50:06.2206020Z             {
2026-06-04T12:50:06.2206705Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.2207133Z               "line": 88
2026-06-04T12:50:06.2207536Z             },
2026-06-04T12:50:06.2207934Z             {
2026-06-04T12:50:06.2208596Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.2209033Z               "line": 110
2026-06-04T12:50:06.2209469Z             },
2026-06-04T12:50:06.2209870Z             {
2026-06-04T12:50:06.2210536Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.2210967Z               "line": 153
2026-06-04T12:50:06.2211372Z             },
2026-06-04T12:50:06.2211763Z             {
2026-06-04T12:50:06.2212431Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.2212860Z               "line": 182
2026-06-04T12:50:06.2213268Z             },
2026-06-04T12:50:06.2213660Z             {
2026-06-04T12:50:06.2214324Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2214775Z               "line": 29
2026-06-04T12:50:06.2215332Z             },
2026-06-04T12:50:06.2215731Z             {
2026-06-04T12:50:06.2216488Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:50:06.2216937Z               "line": 31
2026-06-04T12:50:06.2217353Z             },
2026-06-04T12:50:06.2217778Z             {
2026-06-04T12:50:06.2218448Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2218891Z               "line": 40
2026-06-04T12:50:06.2219358Z             },
2026-06-04T12:50:06.2219769Z             {
2026-06-04T12:50:06.2220422Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2220845Z               "line": 131
2026-06-04T12:50:06.2221252Z             },
2026-06-04T12:50:06.2221649Z             {
2026-06-04T12:50:06.2222293Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2222729Z               "line": 306
2026-06-04T12:50:06.2223272Z             }
2026-06-04T12:50:06.2223693Z           ]
2026-06-04T12:50:06.2224084Z         },
2026-06-04T12:50:06.2224496Z         "int": {
2026-06-04T12:50:06.2224946Z           "complete": false,
2026-06-04T12:50:06.2225369Z           "evidence": []
2026-06-04T12:50:06.2225765Z         },
2026-06-04T12:50:06.2226171Z         "unit": {
2026-06-04T12:50:06.2226617Z           "complete": true,
2026-06-04T12:50:06.2227042Z           "evidence": [
2026-06-04T12:50:06.2227443Z             {
2026-06-04T12:50:06.2228111Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.2228538Z               "line": 236
2026-06-04T12:50:06.2228937Z             },
2026-06-04T12:50:06.2229372Z             {
2026-06-04T12:50:06.2230044Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:50:06.2230482Z               "line": 349
2026-06-04T12:50:06.2230882Z             },
2026-06-04T12:50:06.2231279Z             {
2026-06-04T12:50:06.2231939Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2232390Z               "line": 194
2026-06-04T12:50:06.2232787Z             },
2026-06-04T12:50:06.2233183Z             {
2026-06-04T12:50:06.2233840Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2234267Z               "line": 216
2026-06-04T12:50:06.2234676Z             },
2026-06-04T12:50:06.2235068Z             {
2026-06-04T12:50:06.2235720Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2236142Z               "line": 230
2026-06-04T12:50:06.2236547Z             },
2026-06-04T12:50:06.2236951Z             {
2026-06-04T12:50:06.2237593Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2238028Z               "line": 242
2026-06-04T12:50:06.2238427Z             },
2026-06-04T12:50:06.2238828Z             {
2026-06-04T12:50:06.2239513Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2239965Z               "line": 256
2026-06-04T12:50:06.2240367Z             },
2026-06-04T12:50:06.2240776Z             {
2026-06-04T12:50:06.2241436Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2241860Z               "line": 270
2026-06-04T12:50:06.2242265Z             },
2026-06-04T12:50:06.2242655Z             {
2026-06-04T12:50:06.2243312Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2247440Z               "line": 277
2026-06-04T12:50:06.2247978Z             },
2026-06-04T12:50:06.2248416Z             {
2026-06-04T12:50:06.2249103Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:50:06.2249631Z               "line": 295
2026-06-04T12:50:06.2250037Z             },
2026-06-04T12:50:06.2250439Z             {
2026-06-04T12:50:06.2251098Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2251524Z               "line": 696
2026-06-04T12:50:06.2251966Z             },
2026-06-04T12:50:06.2252361Z             {
2026-06-04T12:50:06.2253017Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2253736Z               "line": 757
2026-06-04T12:50:06.2254161Z             },
2026-06-04T12:50:06.2254582Z             {
2026-06-04T12:50:06.2255230Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2255667Z               "line": 814
2026-06-04T12:50:06.2256067Z             },
2026-06-04T12:50:06.2256469Z             {
2026-06-04T12:50:06.2257126Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2257555Z               "line": 868
2026-06-04T12:50:06.2257962Z             },
2026-06-04T12:50:06.2258359Z             {
2026-06-04T12:50:06.2259019Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2259493Z               "line": 920
2026-06-04T12:50:06.2259908Z             },
2026-06-04T12:50:06.2260309Z             {
2026-06-04T12:50:06.2261097Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2261555Z               "line": 1084
2026-06-04T12:50:06.2261956Z             }
2026-06-04T12:50:06.2262357Z           ]
2026-06-04T12:50:06.2262749Z         }
2026-06-04T12:50:06.2263152Z       }
2026-06-04T12:50:06.2263549Z     },
2026-06-04T12:50:06.2263938Z     {
2026-06-04T12:50:06.2264388Z       "id": "REQ-PAIR-2",
2026-06-04T12:50:06.2265105Z       "title": "Local trust store with TOFU + warn-on-change",
2026-06-04T12:50:06.2265566Z       "requiredStages": [
2026-06-04T12:50:06.2265977Z         "impl",
2026-06-04T12:50:06.2266386Z         "unit"
2026-06-04T12:50:06.2266788Z       ],
2026-06-04T12:50:06.2267198Z       "stages": {
2026-06-04T12:50:06.2267606Z         "doc": {
2026-06-04T12:50:06.2268052Z           "complete": false,
2026-06-04T12:50:06.2268486Z           "evidence": []
2026-06-04T12:50:06.2268888Z         },
2026-06-04T12:50:06.2269345Z         "impl": {
2026-06-04T12:50:06.2269801Z           "complete": true,
2026-06-04T12:50:06.2270237Z           "evidence": [
2026-06-04T12:50:06.2270648Z             {
2026-06-04T12:50:06.2271245Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2271670Z               "line": 42
2026-06-04T12:50:06.2272073Z             },
2026-06-04T12:50:06.2272478Z             {
2026-06-04T12:50:06.2273053Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2273483Z               "line": 151
2026-06-04T12:50:06.2273890Z             },
2026-06-04T12:50:06.2274283Z             {
2026-06-04T12:50:06.2274860Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2275296Z               "line": 171
2026-06-04T12:50:06.2275703Z             },
2026-06-04T12:50:06.2276104Z             {
2026-06-04T12:50:06.2276674Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2277112Z               "line": 209
2026-06-04T12:50:06.2277511Z             },
2026-06-04T12:50:06.2277912Z             {
2026-06-04T12:50:06.2278485Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2278938Z               "line": 232
2026-06-04T12:50:06.2279378Z             }
2026-06-04T12:50:06.2279774Z           ]
2026-06-04T12:50:06.2280171Z         },
2026-06-04T12:50:06.2280567Z         "int": {
2026-06-04T12:50:06.2281017Z           "complete": false,
2026-06-04T12:50:06.2281447Z           "evidence": []
2026-06-04T12:50:06.2281846Z         },
2026-06-04T12:50:06.2282253Z         "unit": {
2026-06-04T12:50:06.2282690Z           "complete": true,
2026-06-04T12:50:06.2283119Z           "evidence": [
2026-06-04T12:50:06.2283510Z             {
2026-06-04T12:50:06.2284084Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2284510Z               "line": 253
2026-06-04T12:50:06.2284915Z             },
2026-06-04T12:50:06.2285309Z             {
2026-06-04T12:50:06.2285869Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2286299Z               "line": 272
2026-06-04T12:50:06.2286710Z             },
2026-06-04T12:50:06.2287108Z             {
2026-06-04T12:50:06.2287841Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2288278Z               "line": 284
2026-06-04T12:50:06.2288682Z             },
2026-06-04T12:50:06.2289072Z             {
2026-06-04T12:50:06.2289689Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2290115Z               "line": 303
2026-06-04T12:50:06.2290520Z             },
2026-06-04T12:50:06.2290912Z             {
2026-06-04T12:50:06.2291489Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2291919Z               "line": 319
2026-06-04T12:50:06.2292318Z             },
2026-06-04T12:50:06.2292721Z             {
2026-06-04T12:50:06.2293290Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2293726Z               "line": 331
2026-06-04T12:50:06.2294132Z             },
2026-06-04T12:50:06.2294532Z             {
2026-06-04T12:50:06.2295102Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2295683Z               "line": 343
2026-06-04T12:50:06.2296105Z             },
2026-06-04T12:50:06.2296500Z             {
2026-06-04T12:50:06.2297081Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2297553Z               "line": 356
2026-06-04T12:50:06.2297954Z             },
2026-06-04T12:50:06.2298348Z             {
2026-06-04T12:50:06.2298911Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:50:06.2299384Z               "line": 370
2026-06-04T12:50:06.2299779Z             }
2026-06-04T12:50:06.2300176Z           ]
2026-06-04T12:50:06.2300571Z         }
2026-06-04T12:50:06.2300963Z       }
2026-06-04T12:50:06.2301353Z     },
2026-06-04T12:50:06.2301736Z     {
2026-06-04T12:50:06.2302185Z       "id": "REQ-PAIR-3",
2026-06-04T12:50:06.2302951Z       "title": "Fetch current pairing code from any paired node",
2026-06-04T12:50:06.2303411Z       "requiredStages": [
2026-06-04T12:50:06.2303821Z         "impl",
2026-06-04T12:50:06.2304232Z         "unit"
2026-06-04T12:50:06.2304629Z       ],
2026-06-04T12:50:06.2305057Z       "stages": {
2026-06-04T12:50:06.2305460Z         "doc": {
2026-06-04T12:50:06.2305897Z           "complete": false,
2026-06-04T12:50:06.2306337Z           "evidence": []
2026-06-04T12:50:06.2306739Z         },
2026-06-04T12:50:06.2307140Z         "impl": {
2026-06-04T12:50:06.2307588Z           "complete": true,
2026-06-04T12:50:06.2308014Z           "evidence": [
2026-06-04T12:50:06.2308412Z             {
2026-06-04T12:50:06.2308925Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2309394Z               "line": 793
2026-06-04T12:50:06.2309802Z             },
2026-06-04T12:50:06.2310191Z             {
2026-06-04T12:50:06.2310708Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2311131Z               "line": 829
2026-06-04T12:50:06.2311530Z             },
2026-06-04T12:50:06.2311920Z             {
2026-06-04T12:50:06.2312438Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2312885Z               "line": 889
2026-06-04T12:50:06.2313289Z             }
2026-06-04T12:50:06.2313683Z           ]
2026-06-04T12:50:06.2314074Z         },
2026-06-04T12:50:06.2314477Z         "int": {
2026-06-04T12:50:06.2314924Z           "complete": false,
2026-06-04T12:50:06.2315356Z           "evidence": []
2026-06-04T12:50:06.2315758Z         },
2026-06-04T12:50:06.2316159Z         "unit": {
2026-06-04T12:50:06.2316603Z           "complete": true,
2026-06-04T12:50:06.2317027Z           "evidence": [
2026-06-04T12:50:06.2317426Z             {
2026-06-04T12:50:06.2317944Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2318379Z               "line": 1250
2026-06-04T12:50:06.2318785Z             },
2026-06-04T12:50:06.2319222Z             {
2026-06-04T12:50:06.2319996Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2320634Z               "line": 1267
2026-06-04T12:50:06.2321052Z             },
2026-06-04T12:50:06.2321445Z             {
2026-06-04T12:50:06.2326117Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2326967Z               "line": 1281
2026-06-04T12:50:06.2327378Z             },
2026-06-04T12:50:06.2327783Z             {
2026-06-04T12:50:06.2328303Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2328744Z               "line": 1297
2026-06-04T12:50:06.2329148Z             },
2026-06-04T12:50:06.2329876Z             {
2026-06-04T12:50:06.2330560Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2330992Z               "line": 1318
2026-06-04T12:50:06.2331399Z             },
2026-06-04T12:50:06.2331796Z             {
2026-06-04T12:50:06.2332313Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2332750Z               "line": 1334
2026-06-04T12:50:06.2333153Z             },
2026-06-04T12:50:06.2333552Z             {
2026-06-04T12:50:06.2334056Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2334489Z               "line": 1347
2026-06-04T12:50:06.2335061Z             },
2026-06-04T12:50:06.2335470Z             {
2026-06-04T12:50:06.2336013Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2336468Z               "line": 1356
2026-06-04T12:50:06.2336931Z             }
2026-06-04T12:50:06.2337412Z           ]
2026-06-04T12:50:06.2337890Z         }
2026-06-04T12:50:06.2338337Z       }
2026-06-04T12:50:06.2338790Z     },
2026-06-04T12:50:06.2339430Z     {
2026-06-04T12:50:06.2340166Z       "id": "REQ-PAIR-4",
2026-06-04T12:50:06.2340829Z       "title": "Subnet naming on first pairing",
2026-06-04T12:50:06.2341362Z       "requiredStages": [
2026-06-04T12:50:06.2341840Z         "impl",
2026-06-04T12:50:06.2342274Z         "unit"
2026-06-04T12:50:06.2342714Z       ],
2026-06-04T12:50:06.2343162Z       "stages": {
2026-06-04T12:50:06.2343618Z         "doc": {
2026-06-04T12:50:06.2344137Z           "complete": false,
2026-06-04T12:50:06.2344627Z           "evidence": []
2026-06-04T12:50:06.2345092Z         },
2026-06-04T12:50:06.2345608Z         "impl": {
2026-06-04T12:50:06.2346121Z           "complete": true,
2026-06-04T12:50:06.2346597Z           "evidence": [
2026-06-04T12:50:06.2347072Z             {
2026-06-04T12:50:06.2347765Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:50:06.2348286Z               "line": 154
2026-06-04T12:50:06.2348737Z             }
2026-06-04T12:50:06.2349263Z           ]
2026-06-04T12:50:06.2350016Z         },
2026-06-04T12:50:06.2350493Z         "int": {
2026-06-04T12:50:06.2351002Z           "complete": false,
2026-06-04T12:50:06.2361024Z           "evidence": []
2026-06-04T12:50:06.2361736Z         },
2026-06-04T12:50:06.2362185Z         "unit": {
2026-06-04T12:50:06.2362662Z           "complete": true,
2026-06-04T12:50:06.2363116Z           "evidence": [
2026-06-04T12:50:06.2363514Z             {
2026-06-04T12:50:06.2364214Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2364671Z               "line": 972
2026-06-04T12:50:06.2365086Z             }
2026-06-04T12:50:06.2365535Z           ]
2026-06-04T12:50:06.2365945Z         }
2026-06-04T12:50:06.2366383Z       }
2026-06-04T12:50:06.2366781Z     },
2026-06-04T12:50:06.2367193Z     {
2026-06-04T12:50:06.2367648Z       "id": "REQ-PAIR-5",
2026-06-04T12:50:06.2369760Z       "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing",
2026-06-04T12:50:06.2370410Z       "requiredStages": [
2026-06-04T12:50:06.2370833Z         "impl",
2026-06-04T12:50:06.2371258Z         "unit"
2026-06-04T12:50:06.2371674Z       ],
2026-06-04T12:50:06.2372129Z       "stages": {
2026-06-04T12:50:06.2372578Z         "doc": {
2026-06-04T12:50:06.2373051Z           "complete": false,
2026-06-04T12:50:06.2373519Z           "evidence": []
2026-06-04T12:50:06.2373926Z         },
2026-06-04T12:50:06.2374355Z         "impl": {
2026-06-04T12:50:06.2374814Z           "complete": true,
2026-06-04T12:50:06.2375267Z           "evidence": [
2026-06-04T12:50:06.2375685Z             {
2026-06-04T12:50:06.2376466Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2377552Z               "line": 33
2026-06-04T12:50:06.2377972Z             },
2026-06-04T12:50:06.2378387Z             {
2026-06-04T12:50:06.2379146Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2379749Z               "line": 45
2026-06-04T12:50:06.2380181Z             },
2026-06-04T12:50:06.2380587Z             {
2026-06-04T12:50:06.2381349Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2381779Z               "line": 59
2026-06-04T12:50:06.2382187Z             },
2026-06-04T12:50:06.2382604Z             {
2026-06-04T12:50:06.2383276Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2383727Z               "line": 306
2026-06-04T12:50:06.2384130Z             }
2026-06-04T12:50:06.2384540Z           ]
2026-06-04T12:50:06.2384987Z         },
2026-06-04T12:50:06.2385672Z         "int": {
2026-06-04T12:50:06.2386126Z           "complete": false,
2026-06-04T12:50:06.2386600Z           "evidence": []
2026-06-04T12:50:06.2387023Z         },
2026-06-04T12:50:06.2387461Z         "unit": {
2026-06-04T12:50:06.2387940Z           "complete": true,
2026-06-04T12:50:06.2388419Z           "evidence": [
2026-06-04T12:50:06.2388851Z             {
2026-06-04T12:50:06.2389693Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2390159Z               "line": 72
2026-06-04T12:50:06.2390591Z             },
2026-06-04T12:50:06.2390997Z             {
2026-06-04T12:50:06.2391752Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2392187Z               "line": 82
2026-06-04T12:50:06.2392599Z             },
2026-06-04T12:50:06.2393007Z             {
2026-06-04T12:50:06.2393775Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2394237Z               "line": 92
2026-06-04T12:50:06.2394670Z             },
2026-06-04T12:50:06.2395089Z             {
2026-06-04T12:50:06.2395859Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2396329Z               "line": 102
2026-06-04T12:50:06.2396754Z             },
2026-06-04T12:50:06.2397179Z             {
2026-06-04T12:50:06.2397930Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:50:06.2398368Z               "line": 117
2026-06-04T12:50:06.2398784Z             },
2026-06-04T12:50:06.2399240Z             {
2026-06-04T12:50:06.2399914Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2400367Z               "line": 750
2026-06-04T12:50:06.2400785Z             },
2026-06-04T12:50:06.2401202Z             {
2026-06-04T12:50:06.2401856Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2402314Z               "line": 806
2026-06-04T12:50:06.2402726Z             },
2026-06-04T12:50:06.2403157Z             {
2026-06-04T12:50:06.2403858Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:50:06.2404323Z               "line": 1026
2026-06-04T12:50:06.2404749Z             }
2026-06-04T12:50:06.2405173Z           ]
2026-06-04T12:50:06.2405609Z         }
2026-06-04T12:50:06.2406036Z       }
2026-06-04T12:50:06.2406463Z     },
2026-06-04T12:50:06.2406896Z     {
2026-06-04T12:50:06.2407376Z       "id": "REQ-PAIR-6",
2026-06-04T12:50:06.2408882Z       "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)",
2026-06-04T12:50:06.2409599Z       "requiredStages": [
2026-06-04T12:50:06.2410224Z         "impl",
2026-06-04T12:50:06.2410653Z         "unit"
2026-06-04T12:50:06.2411077Z       ],
2026-06-04T12:50:06.2411534Z       "stages": {
2026-06-04T12:50:06.2411951Z         "doc": {
2026-06-04T12:50:06.2412426Z           "complete": false,
2026-06-04T12:50:06.2412880Z           "evidence": []
2026-06-04T12:50:06.2413314Z         },
2026-06-04T12:50:06.2413764Z         "impl": {
2026-06-04T12:50:06.2414244Z           "complete": true,
2026-06-04T12:50:06.2415147Z           "evidence": [
2026-06-04T12:50:06.2415566Z             {
2026-06-04T12:50:06.2416119Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2416571Z               "line": 829
2026-06-04T12:50:06.2417005Z             },
2026-06-04T12:50:06.2417422Z             {
2026-06-04T12:50:06.2417964Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2418423Z               "line": 889
2026-06-04T12:50:06.2418841Z             },
2026-06-04T12:50:06.2425711Z             {
2026-06-04T12:50:06.2426505Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:50:06.2426973Z               "line": 18
2026-06-04T12:50:06.2427375Z             },
2026-06-04T12:50:06.2427789Z             {
2026-06-04T12:50:06.2428361Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:50:06.2428803Z               "line": 49
2026-06-04T12:50:06.2429328Z             },
2026-06-04T12:50:06.2430203Z             {
2026-06-04T12:50:06.2430846Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:50:06.2431322Z               "line": 70
2026-06-04T12:50:06.2431756Z             }
2026-06-04T12:50:06.2432177Z           ]
2026-06-04T12:50:06.2432586Z         },
2026-06-04T12:50:06.2433025Z         "int": {
2026-06-04T12:50:06.2433497Z           "complete": false,
2026-06-04T12:50:06.2433984Z           "evidence": []
2026-06-04T12:50:06.2434422Z         },
2026-06-04T12:50:06.2434944Z         "unit": {
2026-06-04T12:50:06.2435458Z           "complete": true,
2026-06-04T12:50:06.2435912Z           "evidence": [
2026-06-04T12:50:06.2436348Z             {
2026-06-04T12:50:06.2436893Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2437361Z               "line": 1369
2026-06-04T12:50:06.2437787Z             },
2026-06-04T12:50:06.2438214Z             {
2026-06-04T12:50:06.2438765Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2439330Z               "line": 1386
2026-06-04T12:50:06.2439810Z             },
2026-06-04T12:50:06.2440233Z             {
2026-06-04T12:50:06.2440851Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:50:06.2441297Z               "line": 132
2026-06-04T12:50:06.2441722Z             },
2026-06-04T12:50:06.2442142Z             {
2026-06-04T12:50:06.2442720Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:50:06.2443182Z               "line": 141
2026-06-04T12:50:06.2443600Z             }
2026-06-04T12:50:06.2444033Z           ]
2026-06-04T12:50:06.2444467Z         }
2026-06-04T12:50:06.2444888Z       }
2026-06-04T12:50:06.2445308Z     },
2026-06-04T12:50:06.2445811Z     {
2026-06-04T12:50:06.2446278Z       "id": "REQ-PAIR-7",
2026-06-04T12:50:06.2447182Z       "title": "Subnet icon (inline image metadata, GUI-only consumer)",
2026-06-04T12:50:06.2447684Z       "requiredStages": [],
2026-06-04T12:50:06.2448108Z       "stages": {
2026-06-04T12:50:06.2448544Z         "doc": {
2026-06-04T12:50:06.2449062Z           "complete": false,
2026-06-04T12:50:06.2449768Z           "evidence": []
2026-06-04T12:50:06.2450479Z         },
2026-06-04T12:50:06.2450923Z         "impl": {
2026-06-04T12:50:06.2451409Z           "complete": false,
2026-06-04T12:50:06.2451885Z           "evidence": []
2026-06-04T12:50:06.2452320Z         },
2026-06-04T12:50:06.2452777Z         "int": {
2026-06-04T12:50:06.2453277Z           "complete": false,
2026-06-04T12:50:06.2453757Z           "evidence": []
2026-06-04T12:50:06.2454172Z         },
2026-06-04T12:50:06.2454614Z         "unit": {
2026-06-04T12:50:06.2455082Z           "complete": false,
2026-06-04T12:50:06.2455542Z           "evidence": []
2026-06-04T12:50:06.2455960Z         }
2026-06-04T12:50:06.2456370Z       }
2026-06-04T12:50:06.2456799Z     },
2026-06-04T12:50:06.2457214Z     {
2026-06-04T12:50:06.2457704Z       "id": "REQ-REACH-1",
2026-06-04T12:50:06.2458547Z       "title": "Off-node remote-drive detection + file transfer",
2026-06-04T12:50:06.2459075Z       "requiredStages": [
2026-06-04T12:50:06.2459657Z         "impl",
2026-06-04T12:50:06.2460098Z         "unit"
2026-06-04T12:50:06.2460923Z       ],
2026-06-04T12:50:06.2461373Z       "stages": {
2026-06-04T12:50:06.2461820Z         "doc": {
2026-06-04T12:50:06.2462304Z           "complete": false,
2026-06-04T12:50:06.2462781Z           "evidence": []
2026-06-04T12:50:06.2463203Z         },
2026-06-04T12:50:06.2463623Z         "impl": {
2026-06-04T12:50:06.2464092Z           "complete": true,
2026-06-04T12:50:06.2464563Z           "evidence": [
2026-06-04T12:50:06.2465023Z             {
2026-06-04T12:50:06.2465684Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:50:06.2466148Z               "line": 133
2026-06-04T12:50:06.2466585Z             },
2026-06-04T12:50:06.2467000Z             {
2026-06-04T12:50:06.2467624Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:50:06.2468088Z               "line": 76
2026-06-04T12:50:06.2468527Z             },
2026-06-04T12:50:06.2469356Z             {
2026-06-04T12:50:06.2469992Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:50:06.2470488Z               "line": 209
2026-06-04T12:50:06.2470901Z             },
2026-06-04T12:50:06.2471314Z             {
2026-06-04T12:50:06.2471909Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:50:06.2472365Z               "line": 386
2026-06-04T12:50:06.2472784Z             },
2026-06-04T12:50:06.2473211Z             {
2026-06-04T12:50:06.2473833Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:50:06.2474303Z               "line": 484
2026-06-04T12:50:06.2474758Z             },
2026-06-04T12:50:06.2475204Z             {
2026-06-04T12:50:06.2475873Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:50:06.2476342Z               "line": 39
2026-06-04T12:50:06.2476794Z             },
2026-06-04T12:50:06.2477229Z             {
2026-06-04T12:50:06.2477839Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:06.2478323Z               "line": 176
2026-06-04T12:50:06.2478754Z             },
2026-06-04T12:50:06.2479470Z             {
2026-06-04T12:50:06.2480204Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:50:06.2480782Z               "line": 82
2026-06-04T12:50:06.2481255Z             },
2026-06-04T12:50:06.2481711Z             {
2026-06-04T12:50:06.2482336Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:50:06.2482802Z               "line": 92
2026-06-04T12:50:06.2483238Z             },
2026-06-04T12:50:06.2483670Z             {
2026-06-04T12:50:06.2484359Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2484854Z               "line": 177
2026-06-04T12:50:06.2485296Z             }
2026-06-04T12:50:06.2485727Z           ]
2026-06-04T12:50:06.2486157Z         },
2026-06-04T12:50:06.2486600Z         "int": {
2026-06-04T12:50:06.2487072Z           "complete": true,
2026-06-04T12:50:06.2487544Z           "evidence": [
2026-06-04T12:50:06.2487970Z             {
2026-06-04T12:50:06.2488697Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.2489270Z               "line": 375
2026-06-04T12:50:06.2489882Z             },
2026-06-04T12:50:06.2490325Z             {
2026-06-04T12:50:06.2491017Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.2491485Z               "line": 478
2026-06-04T12:50:06.2491906Z             }
2026-06-04T12:50:06.2492323Z           ]
2026-06-04T12:50:06.2492748Z         },
2026-06-04T12:50:06.2493195Z         "unit": {
2026-06-04T12:50:06.2493697Z           "complete": true,
2026-06-04T12:50:06.2494149Z           "evidence": [
2026-06-04T12:50:06.2494579Z             {
2026-06-04T12:50:06.2495202Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:50:06.2495653Z               "line": 585
2026-06-04T12:50:06.2496081Z             },
2026-06-04T12:50:06.2496495Z             {
2026-06-04T12:50:06.2497109Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:50:06.2497586Z               "line": 606
2026-06-04T12:50:06.2498002Z             },
2026-06-04T12:50:06.2498801Z             {
2026-06-04T12:50:06.2499719Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:50:06.2500382Z               "line": 337
2026-06-04T12:50:06.2500799Z             },
2026-06-04T12:50:06.2501223Z             {
2026-06-04T12:50:06.2501872Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T12:50:06.2502325Z               "line": 92
2026-06-04T12:50:06.2502764Z             },
2026-06-04T12:50:06.2503180Z             {
2026-06-04T12:50:06.2503830Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T12:50:06.2504284Z               "line": 176
2026-06-04T12:50:06.2504718Z             },
2026-06-04T12:50:06.2505151Z             {
2026-06-04T12:50:06.2505770Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:50:06.2506250Z               "line": 92
2026-06-04T12:50:06.2506704Z             },
2026-06-04T12:50:06.2507418Z             {
2026-06-04T12:50:06.2513999Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:50:06.2514719Z               "line": 123
2026-06-04T12:50:06.2515167Z             },
2026-06-04T12:50:06.2515586Z             {
2026-06-04T12:50:06.2516219Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:06.2516673Z               "line": 367
2026-06-04T12:50:06.2517137Z             },
2026-06-04T12:50:06.2517562Z             {
2026-06-04T12:50:06.2518186Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:50:06.2518656Z               "line": 112
2026-06-04T12:50:06.2519089Z             },
2026-06-04T12:50:06.2519739Z             {
2026-06-04T12:50:06.2520336Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:50:06.2520780Z               "line": 136
2026-06-04T12:50:06.2521188Z             },
2026-06-04T12:50:06.2521608Z             {
2026-06-04T12:50:06.2522252Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2522712Z               "line": 396
2026-06-04T12:50:06.2523136Z             }
2026-06-04T12:50:06.2523561Z           ]
2026-06-04T12:50:06.2523977Z         }
2026-06-04T12:50:06.2524372Z       }
2026-06-04T12:50:06.2524789Z     },
2026-06-04T12:50:06.2525210Z     {
2026-06-04T12:50:06.2525687Z       "id": "REQ-REACH-2",
2026-06-04T12:50:06.2526588Z       "title": "Remote command execution (deferred, consent-gated)",
2026-06-04T12:50:06.2527094Z       "requiredStages": [],
2026-06-04T12:50:06.2527553Z       "stages": {
2026-06-04T12:50:06.2527992Z         "doc": {
2026-06-04T12:50:06.2528472Z           "complete": false,
2026-06-04T12:50:06.2530217Z           "evidence": []
2026-06-04T12:50:06.2530696Z         },
2026-06-04T12:50:06.2531155Z         "impl": {
2026-06-04T12:50:06.2531639Z           "complete": false,
2026-06-04T12:50:06.2532113Z           "evidence": []
2026-06-04T12:50:06.2532527Z         },
2026-06-04T12:50:06.2532982Z         "int": {
2026-06-04T12:50:06.2533472Z           "complete": false,
2026-06-04T12:50:06.2533943Z           "evidence": []
2026-06-04T12:50:06.2534362Z         },
2026-06-04T12:50:06.2534799Z         "unit": {
2026-06-04T12:50:06.2535263Z           "complete": false,
2026-06-04T12:50:06.2535699Z           "evidence": []
2026-06-04T12:50:06.2536114Z         }
2026-06-04T12:50:06.2536532Z       }
2026-06-04T12:50:06.2536921Z     },
2026-06-04T12:50:06.2537331Z     {
2026-06-04T12:50:06.2537847Z       "id": "REQ-SEAM-ACTIVITY",
2026-06-04T12:50:06.2538942Z       "title": "Activity/idle reported via api sentinels, not PTY quiescence",
2026-06-04T12:50:06.2539699Z       "requiredStages": [
2026-06-04T12:50:06.2540319Z         "impl",
2026-06-04T12:50:06.2540765Z         "unit"
2026-06-04T12:50:06.2541188Z       ],
2026-06-04T12:50:06.2541630Z       "stages": {
2026-06-04T12:50:06.2542056Z         "doc": {
2026-06-04T12:50:06.2542536Z           "complete": false,
2026-06-04T12:50:06.2542984Z           "evidence": []
2026-06-04T12:50:06.2543396Z         },
2026-06-04T12:50:06.2543849Z         "impl": {
2026-06-04T12:50:06.2544315Z           "complete": true,
2026-06-04T12:50:06.2545302Z           "evidence": [
2026-06-04T12:50:06.2545712Z             {
2026-06-04T12:50:06.2546347Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2546792Z               "line": 18
2026-06-04T12:50:06.2547226Z             },
2026-06-04T12:50:06.2547648Z             {
2026-06-04T12:50:06.2548258Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2548722Z               "line": 35
2026-06-04T12:50:06.2549145Z             },
2026-06-04T12:50:06.2549979Z             {
2026-06-04T12:50:06.2550595Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2551070Z               "line": 65
2026-06-04T12:50:06.2551535Z             }
2026-06-04T12:50:06.2551976Z           ]
2026-06-04T12:50:06.2552407Z         },
2026-06-04T12:50:06.2552823Z         "int": {
2026-06-04T12:50:06.2553294Z           "complete": false,
2026-06-04T12:50:06.2554029Z           "evidence": []
2026-06-04T12:50:06.2554449Z         },
2026-06-04T12:50:06.2554919Z         "unit": {
2026-06-04T12:50:06.2555384Z           "complete": true,
2026-06-04T12:50:06.2555873Z           "evidence": [
2026-06-04T12:50:06.2556342Z             {
2026-06-04T12:50:06.2556984Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2557425Z               "line": 170
2026-06-04T12:50:06.2557850Z             },
2026-06-04T12:50:06.2558271Z             {
2026-06-04T12:50:06.2558895Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2559612Z               "line": 184
2026-06-04T12:50:06.2560209Z             },
2026-06-04T12:50:06.2560653Z             {
2026-06-04T12:50:06.2561317Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2561789Z               "line": 193
2026-06-04T12:50:06.2562214Z             }
2026-06-04T12:50:06.2562623Z           ]
2026-06-04T12:50:06.2563046Z         }
2026-06-04T12:50:06.2563448Z       }
2026-06-04T12:50:06.2563885Z     },
2026-06-04T12:50:06.2564302Z     {
2026-06-04T12:50:06.2564848Z       "id": "REQ-SEAM-CAPABILITY",
2026-06-04T12:50:06.2565686Z       "title": "Hostable endpoint-types capability declaration",
2026-06-04T12:50:06.2566172Z       "requiredStages": [
2026-06-04T12:50:06.2566608Z         "impl",
2026-06-04T12:50:06.2567024Z         "unit"
2026-06-04T12:50:06.2567452Z       ],
2026-06-04T12:50:06.2567903Z       "stages": {
2026-06-04T12:50:06.2568350Z         "doc": {
2026-06-04T12:50:06.2568833Z           "complete": false,
2026-06-04T12:50:06.2569506Z           "evidence": []
2026-06-04T12:50:06.2570133Z         },
2026-06-04T12:50:06.2570579Z         "impl": {
2026-06-04T12:50:06.2571060Z           "complete": true,
2026-06-04T12:50:06.2571512Z           "evidence": [
2026-06-04T12:50:06.2571931Z             {
2026-06-04T12:50:06.2572582Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2573019Z               "line": 262
2026-06-04T12:50:06.2573463Z             }
2026-06-04T12:50:06.2573876Z           ]
2026-06-04T12:50:06.2574290Z         },
2026-06-04T12:50:06.2574721Z         "int": {
2026-06-04T12:50:06.2575194Z           "complete": false,
2026-06-04T12:50:06.2575663Z           "evidence": []
2026-06-04T12:50:06.2576067Z         },
2026-06-04T12:50:06.2576505Z         "unit": {
2026-06-04T12:50:06.2576978Z           "complete": true,
2026-06-04T12:50:06.2577468Z           "evidence": [
2026-06-04T12:50:06.2577918Z             {
2026-06-04T12:50:06.2578610Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2579092Z               "line": 429
2026-06-04T12:50:06.2579747Z             }
2026-06-04T12:50:06.2580350Z           ]
2026-06-04T12:50:06.2580774Z         }
2026-06-04T12:50:06.2581199Z       }
2026-06-04T12:50:06.2581601Z     },
2026-06-04T12:50:06.2582033Z     {
2026-06-04T12:50:06.2582541Z       "id": "REQ-SEAM-HISTORY",
2026-06-04T12:50:06.2583600Z       "title": "History subsystem (fetcher / locate-normalize / native store)",
2026-06-04T12:50:06.2584217Z       "requiredStages": [
2026-06-04T12:50:06.2585053Z         "impl",
2026-06-04T12:50:06.2585505Z         "unit",
2026-06-04T12:50:06.2585943Z         "int"
2026-06-04T12:50:06.2586363Z       ],
2026-06-04T12:50:06.2586803Z       "stages": {
2026-06-04T12:50:06.2587234Z         "doc": {
2026-06-04T12:50:06.2587708Z           "complete": false,
2026-06-04T12:50:06.2588159Z           "evidence": []
2026-06-04T12:50:06.2588573Z         },
2026-06-04T12:50:06.2589004Z         "impl": {
2026-06-04T12:50:06.2589562Z           "complete": true,
2026-06-04T12:50:06.2590035Z           "evidence": [
2026-06-04T12:50:06.2590452Z             {
2026-06-04T12:50:06.2591059Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:50:06.2591499Z               "line": 24
2026-06-04T12:50:06.2591934Z             },
2026-06-04T12:50:06.2592350Z             {
2026-06-04T12:50:06.2592979Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:50:06.2593433Z               "line": 22
2026-06-04T12:50:06.2594129Z             }
2026-06-04T12:50:06.2594566Z           ]
2026-06-04T12:50:06.2595014Z         },
2026-06-04T12:50:06.2595449Z         "int": {
2026-06-04T12:50:06.2595908Z           "complete": true,
2026-06-04T12:50:06.2602042Z           "evidence": [
2026-06-04T12:50:06.2602660Z             {
2026-06-04T12:50:06.2603321Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:06.2603777Z               "line": 202
2026-06-04T12:50:06.2604188Z             }
2026-06-04T12:50:06.2604615Z           ]
2026-06-04T12:50:06.2605027Z         },
2026-06-04T12:50:06.2605461Z         "unit": {
2026-06-04T12:50:06.2605927Z           "complete": true,
2026-06-04T12:50:06.2606370Z           "evidence": [
2026-06-04T12:50:06.2606791Z             {
2026-06-04T12:50:06.2607373Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:50:06.2607847Z               "line": 163
2026-06-04T12:50:06.2608300Z             },
2026-06-04T12:50:06.2608731Z             {
2026-06-04T12:50:06.2609585Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:50:06.2610225Z               "line": 186
2026-06-04T12:50:06.2610662Z             },
2026-06-04T12:50:06.2611072Z             {
2026-06-04T12:50:06.2611661Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:50:06.2612105Z               "line": 195
2026-06-04T12:50:06.2612554Z             },
2026-06-04T12:50:06.2612991Z             {
2026-06-04T12:50:06.2613630Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:50:06.2614106Z               "line": 195
2026-06-04T12:50:06.2614535Z             },
2026-06-04T12:50:06.2614964Z             {
2026-06-04T12:50:06.2615588Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:50:06.2616051Z               "line": 209
2026-06-04T12:50:06.2616490Z             },
2026-06-04T12:50:06.2616915Z             {
2026-06-04T12:50:06.2617551Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:50:06.2618031Z               "line": 228
2026-06-04T12:50:06.2618467Z             },
2026-06-04T12:50:06.2618901Z             {
2026-06-04T12:50:06.2619633Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:50:06.2620112Z               "line": 248
2026-06-04T12:50:06.2620532Z             },
2026-06-04T12:50:06.2620963Z             {
2026-06-04T12:50:06.2621586Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:50:06.2622053Z               "line": 264
2026-06-04T12:50:06.2622473Z             },
2026-06-04T12:50:06.2622894Z             {
2026-06-04T12:50:06.2623553Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:50:06.2624028Z               "line": 279
2026-06-04T12:50:06.2624475Z             }
2026-06-04T12:50:06.2624919Z           ]
2026-06-04T12:50:06.2625342Z         }
2026-06-04T12:50:06.2625773Z       }
2026-06-04T12:50:06.2626174Z     },
2026-06-04T12:50:06.2626587Z     {
2026-06-04T12:50:06.2627073Z       "id": "REQ-SEAM-INJECT",
2026-06-04T12:50:06.2628015Z       "title": "inject-input methods configurable per activity-state",
2026-06-04T12:50:06.2629003Z       "requiredStages": [
2026-06-04T12:50:06.2629501Z         "impl",
2026-06-04T12:50:06.2629937Z         "unit"
2026-06-04T12:50:06.2630353Z       ],
2026-06-04T12:50:06.2630791Z       "stages": {
2026-06-04T12:50:06.2631215Z         "doc": {
2026-06-04T12:50:06.2631698Z           "complete": false,
2026-06-04T12:50:06.2632153Z           "evidence": []
2026-06-04T12:50:06.2632577Z         },
2026-06-04T12:50:06.2633010Z         "impl": {
2026-06-04T12:50:06.2633500Z           "complete": true,
2026-06-04T12:50:06.2633959Z           "evidence": [
2026-06-04T12:50:06.2634377Z             {
2026-06-04T12:50:06.2635017Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2635458Z               "line": 19
2026-06-04T12:50:06.2635877Z             },
2026-06-04T12:50:06.2636282Z             {
2026-06-04T12:50:06.2636908Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2637624Z               "line": 104
2026-06-04T12:50:06.2638043Z             }
2026-06-04T12:50:06.2638479Z           ]
2026-06-04T12:50:06.2638893Z         },
2026-06-04T12:50:06.2639380Z         "int": {
2026-06-04T12:50:06.2639854Z           "complete": false,
2026-06-04T12:50:06.2640318Z           "evidence": []
2026-06-04T12:50:06.2640742Z         },
2026-06-04T12:50:06.2641162Z         "unit": {
2026-06-04T12:50:06.2641643Z           "complete": true,
2026-06-04T12:50:06.2642116Z           "evidence": [
2026-06-04T12:50:06.2642542Z             {
2026-06-04T12:50:06.2643150Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2643611Z               "line": 222
2026-06-04T12:50:06.2644051Z             },
2026-06-04T12:50:06.2644479Z             {
2026-06-04T12:50:06.2645111Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:50:06.2645573Z               "line": 236
2026-06-04T12:50:06.2646016Z             }
2026-06-04T12:50:06.2646496Z           ]
2026-06-04T12:50:06.2646953Z         }
2026-06-04T12:50:06.2647392Z       }
2026-06-04T12:50:06.2647824Z     },
2026-06-04T12:50:06.2648244Z     {
2026-06-04T12:50:06.2648764Z       "id": "REQ-SEAM-POSTSPAWN",
2026-06-04T12:50:06.2649764Z       "title": "post-spawn / api bind seam with boot nonce",
2026-06-04T12:50:06.2650457Z       "requiredStages": [
2026-06-04T12:50:06.2650903Z         "impl",
2026-06-04T12:50:06.2651331Z         "unit"
2026-06-04T12:50:06.2651744Z       ],
2026-06-04T12:50:06.2652182Z       "stages": {
2026-06-04T12:50:06.2652602Z         "doc": {
2026-06-04T12:50:06.2653086Z           "complete": false,
2026-06-04T12:50:06.2653542Z           "evidence": []
2026-06-04T12:50:06.2653969Z         },
2026-06-04T12:50:06.2654427Z         "impl": {
2026-06-04T12:50:06.2654939Z           "complete": true,
2026-06-04T12:50:06.2655415Z           "evidence": [
2026-06-04T12:50:06.2655857Z             {
2026-06-04T12:50:06.2656510Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2657001Z               "line": 18
2026-06-04T12:50:06.2657453Z             },
2026-06-04T12:50:06.2657901Z             {
2026-06-04T12:50:06.2658507Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2658975Z               "line": 263
2026-06-04T12:50:06.2659620Z             }
2026-06-04T12:50:06.2660234Z           ]
2026-06-04T12:50:06.2660663Z         },
2026-06-04T12:50:06.2661102Z         "int": {
2026-06-04T12:50:06.2661602Z           "complete": false,
2026-06-04T12:50:06.2662077Z           "evidence": []
2026-06-04T12:50:06.2662503Z         },
2026-06-04T12:50:06.2662935Z         "unit": {
2026-06-04T12:50:06.2663409Z           "complete": true,
2026-06-04T12:50:06.2663859Z           "evidence": [
2026-06-04T12:50:06.2664292Z             {
2026-06-04T12:50:06.2664913Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2665390Z               "line": 429
2026-06-04T12:50:06.2665828Z             },
2026-06-04T12:50:06.2666254Z             {
2026-06-04T12:50:06.2666901Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2667780Z               "line": 439
2026-06-04T12:50:06.2668207Z             }
2026-06-04T12:50:06.2668641Z           ]
2026-06-04T12:50:06.2669049Z         }
2026-06-04T12:50:06.2669570Z       }
2026-06-04T12:50:06.2670003Z     },
2026-06-04T12:50:06.2670432Z     {
2026-06-04T12:50:06.2670926Z       "id": "REQ-SEAM-PSYCHE",
2026-06-04T12:50:06.2671727Z       "title": "spawn-psyche seam (fresh + resume templates)",
2026-06-04T12:50:06.2672209Z       "requiredStages": [
2026-06-04T12:50:06.2672632Z         "impl",
2026-06-04T12:50:06.2673065Z         "unit",
2026-06-04T12:50:06.2673488Z         "int"
2026-06-04T12:50:06.2673909Z       ],
2026-06-04T12:50:06.2674349Z       "stages": {
2026-06-04T12:50:06.2674793Z         "doc": {
2026-06-04T12:50:06.2675267Z           "complete": false,
2026-06-04T12:50:06.2675712Z           "evidence": []
2026-06-04T12:50:06.2676125Z         },
2026-06-04T12:50:06.2676553Z         "impl": {
2026-06-04T12:50:06.2677289Z           "complete": true,
2026-06-04T12:50:06.2677740Z           "evidence": [
2026-06-04T12:50:06.2678195Z             {
2026-06-04T12:50:06.2678819Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:50:06.2679330Z               "line": 19
2026-06-04T12:50:06.2679772Z             },
2026-06-04T12:50:06.2680196Z             {
2026-06-04T12:50:06.2680790Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T12:50:06.2681224Z               "line": 12
2026-06-04T12:50:06.2681644Z             },
2026-06-04T12:50:06.2687626Z             {
2026-06-04T12:50:06.2688443Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2688906Z               "line": 164
2026-06-04T12:50:06.2689545Z             }
2026-06-04T12:50:06.2690132Z           ]
2026-06-04T12:50:06.2690545Z         },
2026-06-04T12:50:06.2690973Z         "int": {
2026-06-04T12:50:06.2691436Z           "complete": true,
2026-06-04T12:50:06.2691873Z           "evidence": [
2026-06-04T12:50:06.2692332Z             {
2026-06-04T12:50:06.2692971Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:06.2693459Z               "line": 201
2026-06-04T12:50:06.2693892Z             }
2026-06-04T12:50:06.2694344Z           ]
2026-06-04T12:50:06.2694794Z         },
2026-06-04T12:50:06.2695231Z         "unit": {
2026-06-04T12:50:06.2695713Z           "complete": true,
2026-06-04T12:50:06.2696179Z           "evidence": [
2026-06-04T12:50:06.2696623Z             {
2026-06-04T12:50:06.2697242Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:50:06.2697721Z               "line": 161
2026-06-04T12:50:06.2698160Z             },
2026-06-04T12:50:06.2698567Z             {
2026-06-04T12:50:06.2699258Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:50:06.2699731Z               "line": 168
2026-06-04T12:50:06.2700173Z             },
2026-06-04T12:50:06.2700598Z             {
2026-06-04T12:50:06.2701208Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:50:06.2701706Z               "line": 191
2026-06-04T12:50:06.2702142Z             },
2026-06-04T12:50:06.2702567Z             {
2026-06-04T12:50:06.2703154Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T12:50:06.2703623Z               "line": 106
2026-06-04T12:50:06.2704060Z             },
2026-06-04T12:50:06.2704498Z             {
2026-06-04T12:50:06.2705125Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T12:50:06.2705579Z               "line": 123
2026-06-04T12:50:06.2706010Z             },
2026-06-04T12:50:06.2706413Z             {
2026-06-04T12:50:06.2707018Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T12:50:06.2707476Z               "line": 137
2026-06-04T12:50:06.2707894Z             }
2026-06-04T12:50:06.2708326Z           ]
2026-06-04T12:50:06.2708751Z         }
2026-06-04T12:50:06.2709250Z       }
2026-06-04T12:50:06.2709684Z     },
2026-06-04T12:50:06.2710098Z     {
2026-06-04T12:50:06.2710589Z       "id": "REQ-SEAM-RESUME",
2026-06-04T12:50:06.2711669Z       "title": "resume-session seam (fresh-with-preload / continue-existing)",
2026-06-04T12:50:06.2712682Z       "requiredStages": [
2026-06-04T12:50:06.2713113Z         "impl",
2026-06-04T12:50:06.2713565Z         "unit"
2026-06-04T12:50:06.2713983Z       ],
2026-06-04T12:50:06.2714414Z       "stages": {
2026-06-04T12:50:06.2714839Z         "doc": {
2026-06-04T12:50:06.2715304Z           "complete": false,
2026-06-04T12:50:06.2715781Z           "evidence": []
2026-06-04T12:50:06.2716202Z         },
2026-06-04T12:50:06.2716651Z         "impl": {
2026-06-04T12:50:06.2717118Z           "complete": true,
2026-06-04T12:50:06.2717572Z           "evidence": [
2026-06-04T12:50:06.2717989Z             {
2026-06-04T12:50:06.2718597Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:50:06.2719059Z               "line": 19
2026-06-04T12:50:06.2719579Z             }
2026-06-04T12:50:06.2720036Z           ]
2026-06-04T12:50:06.2720456Z         },
2026-06-04T12:50:06.2721173Z         "int": {
2026-06-04T12:50:06.2721659Z           "complete": false,
2026-06-04T12:50:06.2722157Z           "evidence": []
2026-06-04T12:50:06.2722613Z         },
2026-06-04T12:50:06.2723039Z         "unit": {
2026-06-04T12:50:06.2723541Z           "complete": true,
2026-06-04T12:50:06.2724020Z           "evidence": [
2026-06-04T12:50:06.2724457Z             {
2026-06-04T12:50:06.2725101Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:50:06.2725567Z               "line": 168
2026-06-04T12:50:06.2726008Z             },
2026-06-04T12:50:06.2726436Z             {
2026-06-04T12:50:06.2727062Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:50:06.2727523Z               "line": 187
2026-06-04T12:50:06.2727953Z             },
2026-06-04T12:50:06.2728398Z             {
2026-06-04T12:50:06.2729016Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:50:06.2729718Z               "line": 205
2026-06-04T12:50:06.2730193Z             }
2026-06-04T12:50:06.2730663Z           ]
2026-06-04T12:50:06.2731091Z         }
2026-06-04T12:50:06.2731556Z       }
2026-06-04T12:50:06.2731978Z     },
2026-06-04T12:50:06.2732401Z     {
2026-06-04T12:50:06.2732936Z       "id": "REQ-SEAM-SPAWN",
2026-06-04T12:50:06.2733470Z       "title": "spawn-session seam",
2026-06-04T12:50:06.2733968Z       "requiredStages": [
2026-06-04T12:50:06.2734397Z         "impl",
2026-06-04T12:50:06.2734840Z         "unit"
2026-06-04T12:50:06.2735276Z       ],
2026-06-04T12:50:06.2735716Z       "stages": {
2026-06-04T12:50:06.2736175Z         "doc": {
2026-06-04T12:50:06.2736660Z           "complete": false,
2026-06-04T12:50:06.2737144Z           "evidence": []
2026-06-04T12:50:06.2737565Z         },
2026-06-04T12:50:06.2738007Z         "impl": {
2026-06-04T12:50:06.2738479Z           "complete": true,
2026-06-04T12:50:06.2738947Z           "evidence": [
2026-06-04T12:50:06.2739501Z             {
2026-06-04T12:50:06.2740285Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.2740823Z               "line": 20
2026-06-04T12:50:06.2741301Z             }
2026-06-04T12:50:06.2741814Z           ]
2026-06-04T12:50:06.2742261Z         },
2026-06-04T12:50:06.2742711Z         "int": {
2026-06-04T12:50:06.2743199Z           "complete": false,
2026-06-04T12:50:06.2743713Z           "evidence": []
2026-06-04T12:50:06.2744158Z         },
2026-06-04T12:50:06.2744650Z         "unit": {
2026-06-04T12:50:06.2745159Z           "complete": true,
2026-06-04T12:50:06.2745677Z           "evidence": [
2026-06-04T12:50:06.2746153Z             {
2026-06-04T12:50:06.2746892Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.2747405Z               "line": 397
2026-06-04T12:50:06.2747860Z             },
2026-06-04T12:50:06.2748294Z             {
2026-06-04T12:50:06.2749025Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.2749611Z               "line": 404
2026-06-04T12:50:06.2750066Z             },
2026-06-04T12:50:06.2750544Z             {
2026-06-04T12:50:06.2751285Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.2752162Z               "line": 414
2026-06-04T12:50:06.2752611Z             },
2026-06-04T12:50:06.2753081Z             {
2026-06-04T12:50:06.2753862Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.2754393Z               "line": 420
2026-06-04T12:50:06.2754889Z             },
2026-06-04T12:50:06.2755499Z             {
2026-06-04T12:50:06.2756253Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.2756797Z               "line": 440
2026-06-04T12:50:06.2757262Z             },
2026-06-04T12:50:06.2757709Z             {
2026-06-04T12:50:06.2758386Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:50:06.2758849Z               "line": 473
2026-06-04T12:50:06.2759338Z             }
2026-06-04T12:50:06.2759778Z           ]
2026-06-04T12:50:06.2760216Z         }
2026-06-04T12:50:06.2760671Z       }
2026-06-04T12:50:06.2761392Z     },
2026-06-04T12:50:06.2761821Z     {
2026-06-04T12:50:06.2762338Z       "id": "REQ-SEAM-UPDATE",
2026-06-04T12:50:06.2763304Z       "title": "Adapter-update avenue (file-pull / delegated command)",
2026-06-04T12:50:06.2763812Z       "requiredStages": [
2026-06-04T12:50:06.2764249Z         "impl",
2026-06-04T12:50:06.2764711Z         "unit"
2026-06-04T12:50:06.2765150Z       ],
2026-06-04T12:50:06.2765585Z       "stages": {
2026-06-04T12:50:06.2766021Z         "doc": {
2026-06-04T12:50:06.2766494Z           "complete": false,
2026-06-04T12:50:06.2773023Z           "evidence": []
2026-06-04T12:50:06.2773612Z         },
2026-06-04T12:50:06.2774088Z         "impl": {
2026-06-04T12:50:06.2774585Z           "complete": true,
2026-06-04T12:50:06.2775053Z           "evidence": [
2026-06-04T12:50:06.2775494Z             {
2026-06-04T12:50:06.2776239Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.2776719Z               "line": 28
2026-06-04T12:50:06.2777157Z             },
2026-06-04T12:50:06.2777673Z             {
2026-06-04T12:50:06.2778436Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.2778929Z               "line": 83
2026-06-04T12:50:06.2779443Z             }
2026-06-04T12:50:06.2779888Z           ]
2026-06-04T12:50:06.2780336Z         },
2026-06-04T12:50:06.2780770Z         "int": {
2026-06-04T12:50:06.2781253Z           "complete": false,
2026-06-04T12:50:06.2781724Z           "evidence": []
2026-06-04T12:50:06.2782146Z         },
2026-06-04T12:50:06.2782595Z         "unit": {
2026-06-04T12:50:06.2783078Z           "complete": true,
2026-06-04T12:50:06.2783554Z           "evidence": [
2026-06-04T12:50:06.2783981Z             {
2026-06-04T12:50:06.2784738Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.2785216Z               "line": 248
2026-06-04T12:50:06.2785701Z             },
2026-06-04T12:50:06.2786145Z             {
2026-06-04T12:50:06.2786879Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.2787395Z               "line": 259
2026-06-04T12:50:06.2787861Z             }
2026-06-04T12:50:06.2788309Z           ]
2026-06-04T12:50:06.2788757Z         }
2026-06-04T12:50:06.2789240Z       }
2026-06-04T12:50:06.2789684Z     },
2026-06-04T12:50:06.2790095Z     {
2026-06-04T12:50:06.2790578Z       "id": "REQ-SEC-1",
2026-06-04T12:50:06.2793150Z       "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants",
2026-06-04T12:50:06.2793687Z       "requiredStages": [
2026-06-04T12:50:06.2794130Z         "impl",
2026-06-04T12:50:06.2794558Z         "unit"
2026-06-04T12:50:06.2795002Z       ],
2026-06-04T12:50:06.2795447Z       "stages": {
2026-06-04T12:50:06.2795890Z         "doc": {
2026-06-04T12:50:06.2796378Z           "complete": false,
2026-06-04T12:50:06.2796845Z           "evidence": []
2026-06-04T12:50:06.2797275Z         },
2026-06-04T12:50:06.2797703Z         "impl": {
2026-06-04T12:50:06.2798207Z           "complete": true,
2026-06-04T12:50:06.2798661Z           "evidence": [
2026-06-04T12:50:06.2799736Z             {
2026-06-04T12:50:06.2800551Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:50:06.2801028Z               "line": 84
2026-06-04T12:50:06.2801452Z             },
2026-06-04T12:50:06.2801861Z             {
2026-06-04T12:50:06.2802489Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:50:06.2802938Z               "line": 114
2026-06-04T12:50:06.2803358Z             },
2026-06-04T12:50:06.2803769Z             {
2026-06-04T12:50:06.2804424Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:50:06.2804893Z               "line": 128
2026-06-04T12:50:06.2805304Z             },
2026-06-04T12:50:06.2805727Z             {
2026-06-04T12:50:06.2806355Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2806812Z               "line": 108
2026-06-04T12:50:06.2807246Z             },
2026-06-04T12:50:06.2807943Z             {
2026-06-04T12:50:06.2808564Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2809029Z               "line": 129
2026-06-04T12:50:06.2809696Z             },
2026-06-04T12:50:06.2810272Z             {
2026-06-04T12:50:06.2810895Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2811358Z               "line": 142
2026-06-04T12:50:06.2811768Z             },
2026-06-04T12:50:06.2812174Z             {
2026-06-04T12:50:06.2812775Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2813220Z               "line": 208
2026-06-04T12:50:06.2813626Z             },
2026-06-04T12:50:06.2814044Z             {
2026-06-04T12:50:06.2814663Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2815110Z               "line": 234
2026-06-04T12:50:06.2815530Z             },
2026-06-04T12:50:06.2815965Z             {
2026-06-04T12:50:06.2816529Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2817027Z               "line": 919
2026-06-04T12:50:06.2817488Z             }
2026-06-04T12:50:06.2817958Z           ]
2026-06-04T12:50:06.2818381Z         },
2026-06-04T12:50:06.2818821Z         "int": {
2026-06-04T12:50:06.2819523Z           "complete": false,
2026-06-04T12:50:06.2820179Z           "evidence": []
2026-06-04T12:50:06.2820616Z         },
2026-06-04T12:50:06.2821051Z         "unit": {
2026-06-04T12:50:06.2821531Z           "complete": true,
2026-06-04T12:50:06.2821995Z           "evidence": [
2026-06-04T12:50:06.2822425Z             {
2026-06-04T12:50:06.2823077Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:50:06.2823543Z               "line": 140
2026-06-04T12:50:06.2823955Z             },
2026-06-04T12:50:06.2824383Z             {
2026-06-04T12:50:06.2825021Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:50:06.2825466Z               "line": 186
2026-06-04T12:50:06.2825877Z             },
2026-06-04T12:50:06.2826292Z             {
2026-06-04T12:50:06.2826948Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:50:06.2827405Z               "line": 218
2026-06-04T12:50:06.2827829Z             },
2026-06-04T12:50:06.2828247Z             {
2026-06-04T12:50:06.2828874Z               "path": "crates/spt-daemon/tests/access.rs",
2026-06-04T12:50:06.2829544Z               "line": 128
2026-06-04T12:50:06.2829986Z             },
2026-06-04T12:50:06.2830555Z             {
2026-06-04T12:50:06.2831158Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2831608Z               "line": 248
2026-06-04T12:50:06.2832021Z             },
2026-06-04T12:50:06.2832424Z             {
2026-06-04T12:50:06.2833067Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2833516Z               "line": 275
2026-06-04T12:50:06.2833933Z             },
2026-06-04T12:50:06.2834419Z             {
2026-06-04T12:50:06.2835033Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2835507Z               "line": 299
2026-06-04T12:50:06.2835923Z             },
2026-06-04T12:50:06.2836676Z             {
2026-06-04T12:50:06.2837277Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2837738Z               "line": 310
2026-06-04T12:50:06.2838137Z             },
2026-06-04T12:50:06.2838559Z             {
2026-06-04T12:50:06.2839254Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2840016Z               "line": 334
2026-06-04T12:50:06.2840441Z             },
2026-06-04T12:50:06.2840857Z             {
2026-06-04T12:50:06.2841510Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:50:06.2841964Z               "line": 350
2026-06-04T12:50:06.2842369Z             },
2026-06-04T12:50:06.2842780Z             {
2026-06-04T12:50:06.2843332Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.2843827Z               "line": 1173
2026-06-04T12:50:06.2844235Z             }
2026-06-04T12:50:06.2844659Z           ]
2026-06-04T12:50:06.2845332Z         }
2026-06-04T12:50:06.2845739Z       }
2026-06-04T12:50:06.2846221Z     },
2026-06-04T12:50:06.2846646Z     {
2026-06-04T12:50:06.2847144Z       "id": "REQ-START-1",
2026-06-04T12:50:06.2848303Z       "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only",
2026-06-04T12:50:06.2848823Z       "requiredStages": [
2026-06-04T12:50:06.2849344Z         "impl",
2026-06-04T12:50:06.2849780Z         "unit"
2026-06-04T12:50:06.2850208Z       ],
2026-06-04T12:50:06.2850640Z       "stages": {
2026-06-04T12:50:06.2851075Z         "doc": {
2026-06-04T12:50:06.2851543Z           "complete": false,
2026-06-04T12:50:06.2851998Z           "evidence": []
2026-06-04T12:50:06.2852412Z         },
2026-06-04T12:50:06.2852848Z         "impl": {
2026-06-04T12:50:06.2853330Z           "complete": true,
2026-06-04T12:50:06.2853788Z           "evidence": [
2026-06-04T12:50:06.2854224Z             {
2026-06-04T12:50:06.2854841Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T12:50:06.2855326Z               "line": 16
2026-06-04T12:50:06.2855745Z             }
2026-06-04T12:50:06.2856189Z           ]
2026-06-04T12:50:06.2862671Z         },
2026-06-04T12:50:06.2863298Z         "int": {
2026-06-04T12:50:06.2863780Z           "complete": false,
2026-06-04T12:50:06.2864343Z           "evidence": []
2026-06-04T12:50:06.2864766Z         },
2026-06-04T12:50:06.2865178Z         "unit": {
2026-06-04T12:50:06.2865652Z           "complete": true,
2026-06-04T12:50:06.2866102Z           "evidence": [
2026-06-04T12:50:06.2866501Z             {
2026-06-04T12:50:06.2867124Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T12:50:06.2867554Z               "line": 43
2026-06-04T12:50:06.2867968Z             },
2026-06-04T12:50:06.2868366Z             {
2026-06-04T12:50:06.2868954Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T12:50:06.2869628Z               "line": 59
2026-06-04T12:50:06.2870358Z             }
2026-06-04T12:50:06.2870775Z           ]
2026-06-04T12:50:06.2871208Z         }
2026-06-04T12:50:06.2871615Z       }
2026-06-04T12:50:06.2872025Z     },
2026-06-04T12:50:06.2872423Z     {
2026-06-04T12:50:06.2872887Z       "id": "REQ-START-2",
2026-06-04T12:50:06.2873657Z       "title": "Harness-hosted startup: api seed then listen",
2026-06-04T12:50:06.2874137Z       "requiredStages": [
2026-06-04T12:50:06.2874548Z         "impl",
2026-06-04T12:50:06.2874960Z         "unit",
2026-06-04T12:50:06.2875363Z         "int"
2026-06-04T12:50:06.2875768Z       ],
2026-06-04T12:50:06.2876196Z       "stages": {
2026-06-04T12:50:06.2876601Z         "doc": {
2026-06-04T12:50:06.2877068Z           "complete": false,
2026-06-04T12:50:06.2877507Z           "evidence": []
2026-06-04T12:50:06.2877921Z         },
2026-06-04T12:50:06.2878333Z         "impl": {
2026-06-04T12:50:06.2878796Z           "complete": true,
2026-06-04T12:50:06.2879302Z           "evidence": [
2026-06-04T12:50:06.2879714Z             {
2026-06-04T12:50:06.2880320Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2880768Z               "line": 16
2026-06-04T12:50:06.2881664Z             },
2026-06-04T12:50:06.2882072Z             {
2026-06-04T12:50:06.2882688Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2883144Z               "line": 94
2026-06-04T12:50:06.2883554Z             },
2026-06-04T12:50:06.2883984Z             {
2026-06-04T12:50:06.2884592Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2885056Z               "line": 163
2026-06-04T12:50:06.2885487Z             }
2026-06-04T12:50:06.2885925Z           ]
2026-06-04T12:50:06.2886362Z         },
2026-06-04T12:50:06.2886785Z         "int": {
2026-06-04T12:50:06.2887260Z           "complete": true,
2026-06-04T12:50:06.2887706Z           "evidence": [
2026-06-04T12:50:06.2888135Z             {
2026-06-04T12:50:06.2888770Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:06.2889295Z               "line": 150
2026-06-04T12:50:06.2889729Z             }
2026-06-04T12:50:06.2890375Z           ]
2026-06-04T12:50:06.2890800Z         },
2026-06-04T12:50:06.2891246Z         "unit": {
2026-06-04T12:50:06.2891711Z           "complete": true,
2026-06-04T12:50:06.2892145Z           "evidence": [
2026-06-04T12:50:06.2892574Z             {
2026-06-04T12:50:06.2893191Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2893638Z               "line": 363
2026-06-04T12:50:06.2894053Z             },
2026-06-04T12:50:06.2894462Z             {
2026-06-04T12:50:06.2895071Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2895530Z               "line": 396
2026-06-04T12:50:06.2895941Z             }
2026-06-04T12:50:06.2896391Z           ]
2026-06-04T12:50:06.2896830Z         }
2026-06-04T12:50:06.2897282Z       }
2026-06-04T12:50:06.2897721Z     },
2026-06-04T12:50:06.2898158Z     {
2026-06-04T12:50:06.2898637Z       "id": "REQ-START-3",
2026-06-04T12:50:06.2899904Z       "title": "spt-hosted startup: spawn-session then api bind (no file)",
2026-06-04T12:50:06.2900580Z       "requiredStages": [
2026-06-04T12:50:06.2901027Z         "impl",
2026-06-04T12:50:06.2901468Z         "unit",
2026-06-04T12:50:06.2901884Z         "int"
2026-06-04T12:50:06.2902311Z       ],
2026-06-04T12:50:06.2902746Z       "stages": {
2026-06-04T12:50:06.2903183Z         "doc": {
2026-06-04T12:50:06.2903686Z           "complete": false,
2026-06-04T12:50:06.2904149Z           "evidence": []
2026-06-04T12:50:06.2904573Z         },
2026-06-04T12:50:06.2905005Z         "impl": {
2026-06-04T12:50:06.2905484Z           "complete": true,
2026-06-04T12:50:06.2905935Z           "evidence": [
2026-06-04T12:50:06.2906358Z             {
2026-06-04T12:50:06.2907011Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:50:06.2907459Z               "line": 23
2026-06-04T12:50:06.2907881Z             },
2026-06-04T12:50:06.2908287Z             {
2026-06-04T12:50:06.2908946Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:50:06.2909663Z               "line": 167
2026-06-04T12:50:06.2910283Z             },
2026-06-04T12:50:06.2910728Z             {
2026-06-04T12:50:06.2911369Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:50:06.2911825Z               "line": 180
2026-06-04T12:50:06.2912238Z             },
2026-06-04T12:50:06.2912659Z             {
2026-06-04T12:50:06.2913277Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2913716Z               "line": 17
2026-06-04T12:50:06.2914270Z             },
2026-06-04T12:50:06.2914694Z             {
2026-06-04T12:50:06.2915319Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2915772Z               "line": 43
2026-06-04T12:50:06.2916204Z             },
2026-06-04T12:50:06.2916623Z             {
2026-06-04T12:50:06.2917233Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2917676Z               "line": 95
2026-06-04T12:50:06.2918088Z             }
2026-06-04T12:50:06.2918518Z           ]
2026-06-04T12:50:06.2918948Z         },
2026-06-04T12:50:06.2919613Z         "int": {
2026-06-04T12:50:06.2920674Z           "complete": true,
2026-06-04T12:50:06.2921156Z           "evidence": [
2026-06-04T12:50:06.2921588Z             {
2026-06-04T12:50:06.2922252Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:50:06.2922718Z               "line": 321
2026-06-04T12:50:06.2923138Z             }
2026-06-04T12:50:06.2923565Z           ]
2026-06-04T12:50:06.2923987Z         },
2026-06-04T12:50:06.2924412Z         "unit": {
2026-06-04T12:50:06.2924870Z           "complete": true,
2026-06-04T12:50:06.2925305Z           "evidence": [
2026-06-04T12:50:06.2925728Z             {
2026-06-04T12:50:06.2926354Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:50:06.2926837Z               "line": 245
2026-06-04T12:50:06.2927308Z             },
2026-06-04T12:50:06.2927755Z             {
2026-06-04T12:50:06.2928425Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:50:06.2929272Z               "line": 263
2026-06-04T12:50:06.2929899Z             },
2026-06-04T12:50:06.2930362Z             {
2026-06-04T12:50:06.2931077Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:50:06.2931589Z               "line": 273
2026-06-04T12:50:06.2932021Z             },
2026-06-04T12:50:06.2932465Z             {
2026-06-04T12:50:06.2933119Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2933596Z               "line": 364
2026-06-04T12:50:06.2934038Z             },
2026-06-04T12:50:06.2934484Z             {
2026-06-04T12:50:06.2935138Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2935600Z               "line": 397
2026-06-04T12:50:06.2936044Z             },
2026-06-04T12:50:06.2936478Z             {
2026-06-04T12:50:06.2937120Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:50:06.2937618Z               "line": 405
2026-06-04T12:50:06.2938137Z             }
2026-06-04T12:50:06.2938803Z           ]
2026-06-04T12:50:06.2939286Z         }
2026-06-04T12:50:06.2939718Z       }
2026-06-04T12:50:06.2940141Z     },
2026-06-04T12:50:06.2940568Z     {
2026-06-04T12:50:06.2941048Z       "id": "REQ-START-4",
2026-06-04T12:50:06.2941836Z       "title": "Adapter-injected env aliases (SPT/OWL/LIVE)",
2026-06-04T12:50:06.2942336Z       "requiredStages": [
2026-06-04T12:50:06.2942761Z         "impl",
2026-06-04T12:50:06.2943201Z         "unit"
2026-06-04T12:50:06.2943607Z       ],
2026-06-04T12:50:06.2950049Z       "stages": {
2026-06-04T12:50:06.2950627Z         "doc": {
2026-06-04T12:50:06.2951103Z           "complete": false,
2026-06-04T12:50:06.2951543Z           "evidence": []
2026-06-04T12:50:06.2951949Z         },
2026-06-04T12:50:06.2952369Z         "impl": {
2026-06-04T12:50:06.2952821Z           "complete": true,
2026-06-04T12:50:06.2953265Z           "evidence": [
2026-06-04T12:50:06.2953667Z             {
2026-06-04T12:50:06.2954311Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2954803Z               "line": 249
2026-06-04T12:50:06.2955202Z             }
2026-06-04T12:50:06.2955633Z           ]
2026-06-04T12:50:06.2956032Z         },
2026-06-04T12:50:06.2956444Z         "int": {
2026-06-04T12:50:06.2956895Z           "complete": false,
2026-06-04T12:50:06.2957345Z           "evidence": []
2026-06-04T12:50:06.2957748Z         },
2026-06-04T12:50:06.2958159Z         "unit": {
2026-06-04T12:50:06.2958614Z           "complete": true,
2026-06-04T12:50:06.2959041Z           "evidence": [
2026-06-04T12:50:06.2959672Z             {
2026-06-04T12:50:06.2960457Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:50:06.2960911Z               "line": 442
2026-06-04T12:50:06.2961321Z             }
2026-06-04T12:50:06.2961721Z           ]
2026-06-04T12:50:06.2962137Z         }
2026-06-04T12:50:06.2962535Z       }
2026-06-04T12:50:06.2962944Z     },
2026-06-04T12:50:06.2963335Z     {
2026-06-04T12:50:06.2963797Z       "id": "REQ-STORE-1",
2026-06-04T12:50:06.2969570Z       "title": "spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)",
2026-06-04T12:50:06.2970630Z       "requiredStages": [
2026-06-04T12:50:06.2971101Z         "impl",
2026-06-04T12:50:06.2971535Z         "unit"
2026-06-04T12:50:06.2971969Z       ],
2026-06-04T12:50:06.2972427Z       "stages": {
2026-06-04T12:50:06.2972887Z         "doc": {
2026-06-04T12:50:06.2973398Z           "complete": false,
2026-06-04T12:50:06.2973877Z           "evidence": []
2026-06-04T12:50:06.2974331Z         },
2026-06-04T12:50:06.2974777Z         "impl": {
2026-06-04T12:50:06.2975274Z           "complete": true,
2026-06-04T12:50:06.2975747Z           "evidence": [
2026-06-04T12:50:06.2976166Z             {
2026-06-04T12:50:06.2976851Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.2977541Z               "line": 23
2026-06-04T12:50:06.2977988Z             },
2026-06-04T12:50:06.2978402Z             {
2026-06-04T12:50:06.2979094Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.2979770Z               "line": 46
2026-06-04T12:50:06.2980339Z             },
2026-06-04T12:50:06.2980772Z             {
2026-06-04T12:50:06.2981428Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.2981871Z               "line": 88
2026-06-04T12:50:06.2982279Z             },
2026-06-04T12:50:06.2982705Z             {
2026-06-04T12:50:06.2983379Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.2983818Z               "line": 109
2026-06-04T12:50:06.2984239Z             },
2026-06-04T12:50:06.2984638Z             {
2026-06-04T12:50:06.2985317Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.2985783Z               "line": 152
2026-06-04T12:50:06.2986211Z             },
2026-06-04T12:50:06.2986629Z             {
2026-06-04T12:50:06.2987300Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.2987760Z               "line": 165
2026-06-04T12:50:06.2988168Z             },
2026-06-04T12:50:06.2988586Z             {
2026-06-04T12:50:06.2989481Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.2990099Z               "line": 353
2026-06-04T12:50:06.2990535Z             },
2026-06-04T12:50:06.2990959Z             {
2026-06-04T12:50:06.2991679Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.2992131Z               "line": 25
2026-06-04T12:50:06.2992567Z             },
2026-06-04T12:50:06.2993002Z             {
2026-06-04T12:50:06.2993695Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.2994144Z               "line": 92
2026-06-04T12:50:06.2994561Z             },
2026-06-04T12:50:06.2994981Z             {
2026-06-04T12:50:06.2995689Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.2996165Z               "line": 117
2026-06-04T12:50:06.2996600Z             },
2026-06-04T12:50:06.2997017Z             {
2026-06-04T12:50:06.2997713Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.2998171Z               "line": 131
2026-06-04T12:50:06.2998602Z             },
2026-06-04T12:50:06.2999019Z             {
2026-06-04T12:50:06.3000159Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.3000647Z               "line": 145
2026-06-04T12:50:06.3001071Z             },
2026-06-04T12:50:06.3001504Z             {
2026-06-04T12:50:06.3002188Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.3002648Z               "line": 154
2026-06-04T12:50:06.3003051Z             },
2026-06-04T12:50:06.3003479Z             {
2026-06-04T12:50:06.3004123Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:50:06.3004583Z               "line": 16
2026-06-04T12:50:06.3005002Z             },
2026-06-04T12:50:06.3005753Z             {
2026-06-04T12:50:06.3006395Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:50:06.3006849Z               "line": 63
2026-06-04T12:50:06.3007253Z             }
2026-06-04T12:50:06.3007679Z           ]
2026-06-04T12:50:06.3008095Z         },
2026-06-04T12:50:06.3008533Z         "int": {
2026-06-04T12:50:06.3008997Z           "complete": false,
2026-06-04T12:50:06.3009691Z           "evidence": []
2026-06-04T12:50:06.3010129Z         },
2026-06-04T12:50:06.3010567Z         "unit": {
2026-06-04T12:50:06.3011045Z           "complete": true,
2026-06-04T12:50:06.3011490Z           "evidence": [
2026-06-04T12:50:06.3011929Z             {
2026-06-04T12:50:06.3012629Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.3013125Z               "line": 391
2026-06-04T12:50:06.3013573Z             },
2026-06-04T12:50:06.3014002Z             {
2026-06-04T12:50:06.3014971Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.3015478Z               "line": 401
2026-06-04T12:50:06.3015920Z             },
2026-06-04T12:50:06.3016335Z             {
2026-06-04T12:50:06.3017044Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.3017522Z               "line": 421
2026-06-04T12:50:06.3017952Z             },
2026-06-04T12:50:06.3018388Z             {
2026-06-04T12:50:06.3019114Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.3019718Z               "line": 437
2026-06-04T12:50:06.3020328Z             },
2026-06-04T12:50:06.3020773Z             {
2026-06-04T12:50:06.3021481Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:50:06.3021965Z               "line": 458
2026-06-04T12:50:06.3022395Z             },
2026-06-04T12:50:06.3022819Z             {
2026-06-04T12:50:06.3023524Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.3023996Z               "line": 312
2026-06-04T12:50:06.3024416Z             },
2026-06-04T12:50:06.3024861Z             {
2026-06-04T12:50:06.3025554Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:50:06.3026011Z               "line": 342
2026-06-04T12:50:06.3026426Z             },
2026-06-04T12:50:06.3026853Z             {
2026-06-04T12:50:06.3027497Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:50:06.3027966Z               "line": 116
2026-06-04T12:50:06.3028382Z             },
2026-06-04T12:50:06.3028783Z             {
2026-06-04T12:50:06.3029661Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:50:06.3030289Z               "line": 124
2026-06-04T12:50:06.3030714Z             }
2026-06-04T12:50:06.3031120Z           ]
2026-06-04T12:50:06.3031533Z         }
2026-06-04T12:50:06.3031952Z       }
2026-06-04T12:50:06.3032352Z     },
2026-06-04T12:50:06.3032760Z     {
2026-06-04T12:50:06.3033222Z       "id": "REQ-TERM-1",
2026-06-04T12:50:06.3034221Z       "title": "Process-supervisor terminal wrapper hosting broker PTYs",
2026-06-04T12:50:06.3034710Z       "requiredStages": [
2026-06-04T12:50:06.3035138Z         "impl",
2026-06-04T12:50:06.3035558Z         "unit"
2026-06-04T12:50:06.3035962Z       ],
2026-06-04T12:50:06.3036399Z       "stages": {
2026-06-04T12:50:06.3036832Z         "doc": {
2026-06-04T12:50:06.3043562Z           "complete": false,
2026-06-04T12:50:06.3044205Z           "evidence": []
2026-06-04T12:50:06.3044653Z         },
2026-06-04T12:50:06.3045098Z         "impl": {
2026-06-04T12:50:06.3045561Z           "complete": true,
2026-06-04T12:50:06.3046031Z           "evidence": [
2026-06-04T12:50:06.3046450Z             {
2026-06-04T12:50:06.3047093Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T12:50:06.3047532Z               "line": 61
2026-06-04T12:50:06.3047962Z             },
2026-06-04T12:50:06.3048408Z             {
2026-06-04T12:50:06.3049006Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T12:50:06.3049811Z               "line": 169
2026-06-04T12:50:06.3050260Z             },
2026-06-04T12:50:06.3051196Z             {
2026-06-04T12:50:06.3051915Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T12:50:06.3053721Z               "line": 95
2026-06-04T12:50:06.3055086Z             }
2026-06-04T12:50:06.3056133Z           ]
2026-06-04T12:50:06.3057114Z         },
2026-06-04T12:50:06.3058167Z         "int": {
2026-06-04T12:50:06.3059444Z           "complete": false,
2026-06-04T12:50:06.3060941Z           "evidence": []
2026-06-04T12:50:06.3062201Z         },
2026-06-04T12:50:06.3063219Z         "unit": {
2026-06-04T12:50:06.3064378Z           "complete": true,
2026-06-04T12:50:06.3065738Z           "evidence": [
2026-06-04T12:50:06.3066895Z             {
2026-06-04T12:50:06.3068155Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T12:50:06.3069963Z               "line": 28
2026-06-04T12:50:06.3071189Z             },
2026-06-04T12:50:06.3072253Z             {
2026-06-04T12:50:06.3073981Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T12:50:06.3075744Z               "line": 60
2026-06-04T12:50:06.3076916Z             }
2026-06-04T12:50:06.3077991Z           ]
2026-06-04T12:50:06.3079130Z         }
2026-06-04T12:50:06.3080306Z       }
2026-06-04T12:50:06.3081355Z     },
2026-06-04T12:50:06.3082391Z     {
2026-06-04T12:50:06.3083511Z       "id": "REQ-TERM-2",
2026-06-04T12:50:06.3085412Z       "title": "session-surface abstraction; send-keys + send-line injection",
2026-06-04T12:50:06.3087492Z       "requiredStages": [
2026-06-04T12:50:06.3088699Z         "impl",
2026-06-04T12:50:06.3089841Z         "unit"
2026-06-04T12:50:06.3091042Z       ],
2026-06-04T12:50:06.3092101Z       "stages": {
2026-06-04T12:50:06.3093129Z         "doc": {
2026-06-04T12:50:06.3094184Z           "complete": false,
2026-06-04T12:50:06.3095399Z           "evidence": []
2026-06-04T12:50:06.3096516Z         },
2026-06-04T12:50:06.3097495Z         "impl": {
2026-06-04T12:50:06.3098612Z           "complete": true,
2026-06-04T12:50:06.3100346Z           "evidence": [
2026-06-04T12:50:06.3101473Z             {
2026-06-04T12:50:06.3102682Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T12:50:06.3104166Z               "line": 112
2026-06-04T12:50:06.3105294Z             },
2026-06-04T12:50:06.3106271Z             {
2026-06-04T12:50:06.3107459Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T12:50:06.3108948Z               "line": 122
2026-06-04T12:50:06.3110514Z             }
2026-06-04T12:50:06.3111512Z           ]
2026-06-04T12:50:06.3112484Z         },
2026-06-04T12:50:06.3113412Z         "int": {
2026-06-04T12:50:06.3114473Z           "complete": false,
2026-06-04T12:50:06.3115684Z           "evidence": []
2026-06-04T12:50:06.3116784Z         },
2026-06-04T12:50:06.3117848Z         "unit": {
2026-06-04T12:50:06.3118898Z           "complete": true,
2026-06-04T12:50:06.3120355Z           "evidence": [
2026-06-04T12:50:06.3121585Z             {
2026-06-04T12:50:06.3122854Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T12:50:06.3124483Z               "line": 46
2026-06-04T12:50:06.3125639Z             },
2026-06-04T12:50:06.3126646Z             {
2026-06-04T12:50:06.3127902Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T12:50:06.3129551Z               "line": 71
2026-06-04T12:50:06.3130814Z             }
2026-06-04T12:50:06.3131782Z           ]
2026-06-04T12:50:06.3132717Z         }
2026-06-04T12:50:06.3133631Z       }
2026-06-04T12:50:06.3141800Z     },
2026-06-04T12:50:06.3142809Z     {
2026-06-04T12:50:06.3143759Z       "id": "REQ-TERM-3",
2026-06-04T12:50:06.3145224Z       "title": "Byte-stream remote terminal streaming for v1",
2026-06-04T12:50:06.3146866Z       "requiredStages": [
2026-06-04T12:50:06.3148008Z         "impl",
2026-06-04T12:50:06.3149004Z         "unit"
2026-06-04T12:50:06.3150505Z       ],
2026-06-04T12:50:06.3151432Z       "stages": {
2026-06-04T12:50:06.3152425Z         "doc": {
2026-06-04T12:50:06.3153533Z           "complete": false,
2026-06-04T12:50:06.3155236Z           "evidence": []
2026-06-04T12:50:06.3156368Z         },
2026-06-04T12:50:06.3157325Z         "impl": {
2026-06-04T12:50:06.3158407Z           "complete": true,
2026-06-04T12:50:06.3160005Z           "evidence": [
2026-06-04T12:50:06.3161099Z             {
2026-06-04T12:50:06.3162362Z               "path": "crates/spt-term/src/stream.rs",
2026-06-04T12:50:06.3163821Z               "line": 71
2026-06-04T12:50:06.3164916Z             }
2026-06-04T12:50:06.3165907Z           ]
2026-06-04T12:50:06.3166850Z         },
2026-06-04T12:50:06.3167805Z         "int": {
2026-06-04T12:50:06.3168841Z           "complete": false,
2026-06-04T12:50:06.3170344Z           "evidence": []
2026-06-04T12:50:06.3171511Z         },
2026-06-04T12:50:06.3172535Z         "unit": {
2026-06-04T12:50:06.3173609Z           "complete": true,
2026-06-04T12:50:06.3174803Z           "evidence": [
2026-06-04T12:50:06.3175933Z             {
2026-06-04T12:50:06.3177605Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T12:50:06.3179243Z               "line": 37
2026-06-04T12:50:06.3180401Z             },
2026-06-04T12:50:06.3181430Z             {
2026-06-04T12:50:06.3182644Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T12:50:06.3184153Z               "line": 67
2026-06-04T12:50:06.3185279Z             }
2026-06-04T12:50:06.3186272Z           ]
2026-06-04T12:50:06.3187239Z         }
2026-06-04T12:50:06.3188230Z       }
2026-06-04T12:50:06.3189256Z     },
2026-06-04T12:50:06.3190414Z     {
2026-06-04T12:50:06.3191409Z       "id": "REQ-TERM-4",
2026-06-04T12:50:06.3194391Z       "title": "Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log",
2026-06-04T12:50:06.3197355Z       "requiredStages": [
2026-06-04T12:50:06.3198476Z         "impl",
2026-06-04T12:50:06.3199709Z         "unit",
2026-06-04T12:50:06.3200875Z         "int"
2026-06-04T12:50:06.3201879Z       ],
2026-06-04T12:50:06.3202854Z       "stages": {
2026-06-04T12:50:06.3203988Z         "doc": {
2026-06-04T12:50:06.3205083Z           "complete": true,
2026-06-04T12:50:06.3206297Z           "evidence": [
2026-06-04T12:50:06.3207405Z             {
2026-06-04T12:50:06.3208487Z               "path": "docs/MANIFEST.md",
2026-06-04T12:50:06.3210223Z               "line": 115
2026-06-04T12:50:06.3211319Z             }
2026-06-04T12:50:06.3212286Z           ]
2026-06-04T12:50:06.3213216Z         },
2026-06-04T12:50:06.3214149Z         "impl": {
2026-06-04T12:50:06.3215201Z           "complete": true,
2026-06-04T12:50:06.3216354Z           "evidence": [
2026-06-04T12:50:06.3217415Z             {
2026-06-04T12:50:06.3218566Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:50:06.3220399Z               "line": 463
2026-06-04T12:50:06.3221561Z             },
2026-06-04T12:50:06.3222638Z             {
2026-06-04T12:50:06.3223912Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3225541Z               "line": 41
2026-06-04T12:50:06.3226723Z             },
2026-06-04T12:50:06.3227730Z             {
2026-06-04T12:50:06.3228950Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3230674Z               "line": 91
2026-06-04T12:50:06.3231874Z             },
2026-06-04T12:50:06.3232877Z             {
2026-06-04T12:50:06.3234083Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3235608Z               "line": 152
2026-06-04T12:50:06.3236733Z             },
2026-06-04T12:50:06.3237698Z             {
2026-06-04T12:50:06.3238867Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3240863Z               "line": 212
2026-06-04T12:50:06.3241993Z             },
2026-06-04T12:50:06.3250222Z             {
2026-06-04T12:50:06.3251517Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:50:06.3253037Z               "line": 20
2026-06-04T12:50:06.3254172Z             },
2026-06-04T12:50:06.3255230Z             {
2026-06-04T12:50:06.3256442Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:50:06.3258506Z               "line": 212
2026-06-04T12:50:06.3259740Z             },
2026-06-04T12:50:06.3260734Z             {
2026-06-04T12:50:06.3261973Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:50:06.3263506Z               "line": 226
2026-06-04T12:50:06.3264617Z             },
2026-06-04T12:50:06.3265718Z             {
2026-06-04T12:50:06.3266930Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.3268469Z               "line": 585
2026-06-04T12:50:06.3269656Z             },
2026-06-04T12:50:06.3270637Z             {
2026-06-04T12:50:06.3271786Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3273232Z               "line": 157
2026-06-04T12:50:06.3274352Z             },
2026-06-04T12:50:06.3275332Z             {
2026-06-04T12:50:06.3276486Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3278350Z               "line": 199
2026-06-04T12:50:06.3279743Z             },
2026-06-04T12:50:06.3280920Z             {
2026-06-04T12:50:06.3282091Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3283588Z               "line": 226
2026-06-04T12:50:06.3284716Z             },
2026-06-04T12:50:06.3285683Z             {
2026-06-04T12:50:06.3286750Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.3288138Z               "line": 272
2026-06-04T12:50:06.3289280Z             }
2026-06-04T12:50:06.3290238Z           ]
2026-06-04T12:50:06.3291185Z         },
2026-06-04T12:50:06.3292121Z         "int": {
2026-06-04T12:50:06.3293172Z           "complete": true,
2026-06-04T12:50:06.3294312Z           "evidence": [
2026-06-04T12:50:06.3295351Z             {
2026-06-04T12:50:06.3296553Z               "path": "crates/spt-daemon/tests/digest.rs",
2026-06-04T12:50:06.3298033Z               "line": 18
2026-06-04T12:50:06.3299105Z             }
2026-06-04T12:50:06.3300159Z           ]
2026-06-04T12:50:06.3301073Z         },
2026-06-04T12:50:06.3302041Z         "unit": {
2026-06-04T12:50:06.3303107Z           "complete": true,
2026-06-04T12:50:06.3304249Z           "evidence": [
2026-06-04T12:50:06.3305317Z             {
2026-06-04T12:50:06.3306542Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3308027Z               "line": 250
2026-06-04T12:50:06.3309099Z             },
2026-06-04T12:50:06.3310106Z             {
2026-06-04T12:50:06.3311280Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3312779Z               "line": 263
2026-06-04T12:50:06.3313879Z             },
2026-06-04T12:50:06.3314986Z             {
2026-06-04T12:50:06.3316176Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3317753Z               "line": 275
2026-06-04T12:50:06.3318890Z             },
2026-06-04T12:50:06.3320303Z             {
2026-06-04T12:50:06.3321550Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3323131Z               "line": 290
2026-06-04T12:50:06.3324266Z             },
2026-06-04T12:50:06.3325271Z             {
2026-06-04T12:50:06.3326455Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3327972Z               "line": 305
2026-06-04T12:50:06.3329063Z             },
2026-06-04T12:50:06.3330489Z             {
2026-06-04T12:50:06.3331687Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3333200Z               "line": 327
2026-06-04T12:50:06.3334356Z             },
2026-06-04T12:50:06.3335350Z             {
2026-06-04T12:50:06.3336547Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3338052Z               "line": 337
2026-06-04T12:50:06.3339148Z             },
2026-06-04T12:50:06.3340172Z             {
2026-06-04T12:50:06.3341352Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:50:06.3342855Z               "line": 364
2026-06-04T12:50:06.3344037Z             },
2026-06-04T12:50:06.3345025Z             {
2026-06-04T12:50:06.3346244Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:50:06.3348230Z               "line": 338
2026-06-04T12:50:06.3356054Z             },
2026-06-04T12:50:06.3357264Z             {
2026-06-04T12:50:06.3358470Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:50:06.3360294Z               "line": 350
2026-06-04T12:50:06.3361458Z             },
2026-06-04T12:50:06.3362466Z             {
2026-06-04T12:50:06.3363714Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:50:06.3365396Z               "line": 367
2026-06-04T12:50:06.3366557Z             },
2026-06-04T12:50:06.3367548Z             {
2026-06-04T12:50:06.3368798Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:50:06.3370542Z               "line": 378
2026-06-04T12:50:06.3371643Z             },
2026-06-04T12:50:06.3372613Z             {
2026-06-04T12:50:06.3373796Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.3375788Z               "line": 770
2026-06-04T12:50:06.3376934Z             },
2026-06-04T12:50:06.3377884Z             {
2026-06-04T12:50:06.3379068Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.3380944Z               "line": 777
2026-06-04T12:50:06.3382050Z             },
2026-06-04T12:50:06.3383022Z             {
2026-06-04T12:50:06.3384223Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.3385748Z               "line": 792
2026-06-04T12:50:06.3386834Z             },
2026-06-04T12:50:06.3387787Z             {
2026-06-04T12:50:06.3388921Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3390729Z               "line": 381
2026-06-04T12:50:06.3391808Z             },
2026-06-04T12:50:06.3392758Z             {
2026-06-04T12:50:06.3393887Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3395333Z               "line": 402
2026-06-04T12:50:06.3396480Z             },
2026-06-04T12:50:06.3397443Z             {
2026-06-04T12:50:06.3398586Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3400388Z               "line": 415
2026-06-04T12:50:06.3401460Z             },
2026-06-04T12:50:06.3402406Z             {
2026-06-04T12:50:06.3403741Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3405498Z               "line": 434
2026-06-04T12:50:06.3406628Z             },
2026-06-04T12:50:06.3407597Z             {
2026-06-04T12:50:06.3408728Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:50:06.3410456Z               "line": 461
2026-06-04T12:50:06.3411613Z             },
2026-06-04T12:50:06.3413866Z             {
2026-06-04T12:50:06.3415209Z               "path": "crates/spt-term/tests/digest.rs",
2026-06-04T12:50:06.3416749Z               "line": 32
2026-06-04T12:50:06.3417856Z             },
2026-06-04T12:50:06.3418830Z             {
2026-06-04T12:50:06.3420141Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:50:06.3421569Z               "line": 1200
2026-06-04T12:50:06.3422713Z             }
2026-06-04T12:50:06.3423674Z           ]
2026-06-04T12:50:06.3424609Z         }
2026-06-04T12:50:06.3425503Z       }
2026-06-04T12:50:06.3426401Z     },
2026-06-04T12:50:06.3427350Z     {
2026-06-04T12:50:06.3428281Z       "id": "REQ-UPD-1",
2026-06-04T12:50:06.3429793Z       "title": "Peer-propagated update over P2P",
2026-06-04T12:50:06.3431599Z       "requiredStages": [
2026-06-04T12:50:06.3432790Z         "impl",
2026-06-04T12:50:06.3433841Z         "unit"
2026-06-04T12:50:06.3434882Z       ],
2026-06-04T12:50:06.3435784Z       "stages": {
2026-06-04T12:50:06.3436728Z         "doc": {
2026-06-04T12:50:06.3437702Z           "complete": false,
2026-06-04T12:50:06.3438803Z           "evidence": []
2026-06-04T12:50:06.3440016Z         },
2026-06-04T12:50:06.3440893Z         "impl": {
2026-06-04T12:50:06.3441932Z           "complete": true,
2026-06-04T12:50:06.3442948Z           "evidence": [
2026-06-04T12:50:06.3443926Z             {
2026-06-04T12:50:06.3445015Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.3446857Z               "line": 28
2026-06-04T12:50:06.3447839Z             },
2026-06-04T12:50:06.3448792Z             {
2026-06-04T12:50:06.3450100Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.3451286Z               "line": 74
2026-06-04T12:50:06.3452056Z             },
2026-06-04T12:50:06.3452721Z             {
2026-06-04T12:50:06.3453583Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.3462004Z               "line": 209
2026-06-04T12:50:06.3462936Z             },
2026-06-04T12:50:06.3463509Z             {
2026-06-04T12:50:06.3464276Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:50:06.3465254Z               "line": 22
2026-06-04T12:50:06.3465853Z             },
2026-06-04T12:50:06.3466374Z             {
2026-06-04T12:50:06.3467109Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:50:06.3468614Z               "line": 67
2026-06-04T12:50:06.3469328Z             },
2026-06-04T12:50:06.3469824Z             {
2026-06-04T12:50:06.3470571Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:50:06.3471495Z               "line": 80
2026-06-04T12:50:06.3472077Z             },
2026-06-04T12:50:06.3472572Z             {
2026-06-04T12:50:06.3473274Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:50:06.3474191Z               "line": 101
2026-06-04T12:50:06.3474822Z             },
2026-06-04T12:50:06.3475337Z             {
2026-06-04T12:50:06.3476030Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:50:06.3476981Z               "line": 37
2026-06-04T12:50:06.3477593Z             }
2026-06-04T12:50:06.3478089Z           ]
2026-06-04T12:50:06.3478569Z         },
2026-06-04T12:50:06.3479028Z         "int": {
2026-06-04T12:50:06.3479853Z           "complete": true,
2026-06-04T12:50:06.3480707Z           "evidence": [
2026-06-04T12:50:06.3481287Z             {
2026-06-04T12:50:06.3482026Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:50:06.3482970Z               "line": 190
2026-06-04T12:50:06.3483559Z             }
2026-06-04T12:50:06.3484042Z           ]
2026-06-04T12:50:06.3484507Z         },
2026-06-04T12:50:06.3484962Z         "unit": {
2026-06-04T12:50:06.3485538Z           "complete": true,
2026-06-04T12:50:06.3486204Z           "evidence": [
2026-06-04T12:50:06.3486782Z             {
2026-06-04T12:50:06.3487492Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:50:06.3488423Z               "line": 120
2026-06-04T12:50:06.3489021Z             },
2026-06-04T12:50:06.3489798Z             {
2026-06-04T12:50:06.3490646Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:50:06.3491572Z               "line": 137
2026-06-04T12:50:06.3492206Z             },
2026-06-04T12:50:06.3492700Z             {
2026-06-04T12:50:06.3493464Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:50:06.3494447Z               "line": 201
2026-06-04T12:50:06.3495022Z             },
2026-06-04T12:50:06.3495521Z             {
2026-06-04T12:50:06.3496272Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:50:06.3497184Z               "line": 92
2026-06-04T12:50:06.3497746Z             },
2026-06-04T12:50:06.3498204Z             {
2026-06-04T12:50:06.3498849Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:50:06.3500269Z               "line": 128
2026-06-04T12:50:06.3500886Z             }
2026-06-04T12:50:06.3501370Z           ]
2026-06-04T12:50:06.3501833Z         }
2026-06-04T12:50:06.3502278Z       }
2026-06-04T12:50:06.3502694Z     },
2026-06-04T12:50:06.3503110Z     {
2026-06-04T12:50:06.3503565Z       "id": "REQ-UPD-2",
2026-06-04T12:50:06.3504474Z       "title": "All binaries signature-verified before handoff",
2026-06-04T12:50:06.3505625Z       "requiredStages": [
2026-06-04T12:50:06.3506288Z         "impl",
2026-06-04T12:50:06.3506796Z         "unit"
2026-06-04T12:50:06.3507765Z       ],
2026-06-04T12:50:06.3508227Z       "stages": {
2026-06-04T12:50:06.3508748Z         "doc": {
2026-06-04T12:50:06.3509657Z           "complete": false,
2026-06-04T12:50:06.3510413Z           "evidence": []
2026-06-04T12:50:06.3511053Z         },
2026-06-04T12:50:06.3511510Z         "impl": {
2026-06-04T12:50:06.3512077Z           "complete": true,
2026-06-04T12:50:06.3512762Z           "evidence": [
2026-06-04T12:50:06.3513371Z             {
2026-06-04T12:50:06.3514078Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.3515164Z               "line": 210
2026-06-04T12:50:06.3515778Z             },
2026-06-04T12:50:06.3516267Z             {
2026-06-04T12:50:06.3516967Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:50:06.3518014Z               "line": 294
2026-06-04T12:50:06.3526021Z             },
2026-06-04T12:50:06.3527037Z             {
2026-06-04T12:50:06.3527692Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3528677Z               "line": 29
2026-06-04T12:50:06.3529499Z             },
2026-06-04T12:50:06.3530125Z             {
2026-06-04T12:50:06.3530765Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3531755Z               "line": 126
2026-06-04T12:50:06.3532360Z             },
2026-06-04T12:50:06.3532834Z             {
2026-06-04T12:50:06.3533472Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3534439Z               "line": 138
2026-06-04T12:50:06.3535039Z             },
2026-06-04T12:50:06.3535514Z             {
2026-06-04T12:50:06.3536143Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3537135Z               "line": 220
2026-06-04T12:50:06.3537721Z             },
2026-06-04T12:50:06.3538188Z             {
2026-06-04T12:50:06.3538820Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3540186Z               "line": 301
2026-06-04T12:50:06.3540859Z             },
2026-06-04T12:50:06.3541345Z             {
2026-06-04T12:50:06.3541986Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3542965Z               "line": 149
2026-06-04T12:50:06.3543554Z             }
2026-06-04T12:50:06.3544011Z           ]
2026-06-04T12:50:06.3544455Z         },
2026-06-04T12:50:06.3545016Z         "int": {
2026-06-04T12:50:06.3545542Z           "complete": false,
2026-06-04T12:50:06.3546222Z           "evidence": []
2026-06-04T12:50:06.3546814Z         },
2026-06-04T12:50:06.3547258Z         "unit": {
2026-06-04T12:50:06.3547795Z           "complete": true,
2026-06-04T12:50:06.3548450Z           "evidence": [
2026-06-04T12:50:06.3549050Z             {
2026-06-04T12:50:06.3550110Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3551078Z               "line": 386
2026-06-04T12:50:06.3551663Z             },
2026-06-04T12:50:06.3552991Z             {
2026-06-04T12:50:06.3553692Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3554695Z               "line": 431
2026-06-04T12:50:06.3555285Z             },
2026-06-04T12:50:06.3555752Z             {
2026-06-04T12:50:06.3556412Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3557382Z               "line": 445
2026-06-04T12:50:06.3557962Z             },
2026-06-04T12:50:06.3559002Z             {
2026-06-04T12:50:06.3560114Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3561238Z               "line": 456
2026-06-04T12:50:06.3561871Z             },
2026-06-04T12:50:06.3562483Z             {
2026-06-04T12:50:06.3563139Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3564095Z               "line": 532
2026-06-04T12:50:06.3564683Z             },
2026-06-04T12:50:06.3565159Z             {
2026-06-04T12:50:06.3565777Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3567341Z               "line": 326
2026-06-04T12:50:06.3568009Z             },
2026-06-04T12:50:06.3569005Z             {
2026-06-04T12:50:06.3569867Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3571012Z               "line": 339
2026-06-04T12:50:06.3571610Z             },
2026-06-04T12:50:06.3572094Z             {
2026-06-04T12:50:06.3572784Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:50:06.3573803Z               "line": 242
2026-06-04T12:50:06.3574416Z             }
2026-06-04T12:50:06.3574889Z           ]
2026-06-04T12:50:06.3575323Z         }
2026-06-04T12:50:06.3575756Z       }
2026-06-04T12:50:06.3576172Z     },
2026-06-04T12:50:06.3576584Z     {
2026-06-04T12:50:06.3577038Z       "id": "REQ-UPD-3",
2026-06-04T12:50:06.3578082Z       "title": "No endpoint process terminates/suspends during self-update",
2026-06-04T12:50:06.3579691Z       "requiredStages": [
2026-06-04T12:50:06.3580513Z         "impl",
2026-06-04T12:50:06.3581013Z         "unit",
2026-06-04T12:50:06.3581940Z         "int"
2026-06-04T12:50:06.3582429Z       ],
2026-06-04T12:50:06.3582882Z       "stages": {
2026-06-04T12:50:06.3583390Z         "doc": {
2026-06-04T12:50:06.3583940Z           "complete": false,
2026-06-04T12:50:06.3584617Z           "evidence": []
2026-06-04T12:50:06.3592942Z         },
2026-06-04T12:50:06.3593478Z         "impl": {
2026-06-04T12:50:06.3594033Z           "complete": true,
2026-06-04T12:50:06.3594703Z           "evidence": [
2026-06-04T12:50:06.3595272Z             {
2026-06-04T12:50:06.3595914Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3596901Z               "line": 26
2026-06-04T12:50:06.3597505Z             },
2026-06-04T12:50:06.3597984Z             {
2026-06-04T12:50:06.3598637Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3599701Z               "line": 111
2026-06-04T12:50:06.3600440Z             },
2026-06-04T12:50:06.3600914Z             {
2026-06-04T12:50:06.3601546Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3602540Z               "line": 213
2026-06-04T12:50:06.3603153Z             }
2026-06-04T12:50:06.3603624Z           ]
2026-06-04T12:50:06.3604051Z         },
2026-06-04T12:50:06.3604481Z         "int": {
2026-06-04T12:50:06.3604996Z           "complete": true,
2026-06-04T12:50:06.3605640Z           "evidence": [
2026-06-04T12:50:06.3606209Z             {
2026-06-04T12:50:06.3606889Z               "path": "crates/spt-daemon/tests/brain_swap.rs",
2026-06-04T12:50:06.3607905Z               "line": 23
2026-06-04T12:50:06.3608491Z             }
2026-06-04T12:50:06.3608939Z           ]
2026-06-04T12:50:06.3609109Z         },
2026-06-04T12:50:06.3609516Z         "unit": {
2026-06-04T12:50:06.3609765Z           "complete": true,
2026-06-04T12:50:06.3610097Z           "evidence": [
2026-06-04T12:50:06.3610267Z             {
2026-06-04T12:50:06.3610636Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3610840Z               "line": 238
2026-06-04T12:50:06.3611161Z             },
2026-06-04T12:50:06.3611330Z             {
2026-06-04T12:50:06.3611691Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3611876Z               "line": 262
2026-06-04T12:50:06.3612045Z             },
2026-06-04T12:50:06.3612218Z             {
2026-06-04T12:50:06.3612576Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3612784Z               "line": 273
2026-06-04T12:50:06.3612950Z             },
2026-06-04T12:50:06.3613128Z             {
2026-06-04T12:50:06.3613464Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:50:06.3613662Z               "line": 286
2026-06-04T12:50:06.3613831Z             }
2026-06-04T12:50:06.3613988Z           ]
2026-06-04T12:50:06.3614154Z         }
2026-06-04T12:50:06.3614312Z       }
2026-06-04T12:50:06.3614481Z     },
2026-06-04T12:50:06.3614645Z     {
2026-06-04T12:50:06.3614859Z       "id": "REQ-UPD-4",
2026-06-04T12:50:06.3615522Z       "title": "Update gated on user confirmation by default; opt-in full-auto",
2026-06-04T12:50:06.3616277Z       "requiredStages": [
2026-06-04T12:50:06.3616468Z         "impl",
2026-06-04T12:50:06.3616640Z         "unit"
2026-06-04T12:50:06.3616814Z       ],
2026-06-04T12:50:06.3616982Z       "stages": {
2026-06-04T12:50:06.3617164Z         "doc": {
2026-06-04T12:50:06.3617385Z           "complete": false,
2026-06-04T12:50:06.3617581Z           "evidence": []
2026-06-04T12:50:06.3617765Z         },
2026-06-04T12:50:06.3617937Z         "impl": {
2026-06-04T12:50:06.3618162Z           "complete": true,
2026-06-04T12:50:06.3618355Z           "evidence": [
2026-06-04T12:50:06.3618528Z             {
2026-06-04T12:50:06.3618892Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:50:06.3619100Z               "line": 23
2026-06-04T12:50:06.3619355Z             },
2026-06-04T12:50:06.3619530Z             {
2026-06-04T12:50:06.3619889Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:50:06.3620325Z               "line": 56
2026-06-04T12:50:06.3620514Z             },
2026-06-04T12:50:06.3620715Z             {
2026-06-04T12:50:06.3621073Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:50:06.3621278Z               "line": 77
2026-06-04T12:50:06.3621445Z             },
2026-06-04T12:50:06.3621626Z             {
2026-06-04T12:50:06.3621990Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:50:06.3622205Z               "line": 179
2026-06-04T12:50:06.3622387Z             },
2026-06-04T12:50:06.3622553Z             {
2026-06-04T12:50:06.3622895Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:50:06.3623095Z               "line": 98
2026-06-04T12:50:06.3623264Z             },
2026-06-04T12:50:06.3623426Z             {
2026-06-04T12:50:06.3623741Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:06.3623936Z               "line": 139
2026-06-04T12:50:06.3624096Z             }
2026-06-04T12:50:06.3624278Z           ]
2026-06-04T12:50:06.3624443Z         },
2026-06-04T12:50:06.3624633Z         "int": {
2026-06-04T12:50:06.3624856Z           "complete": false,
2026-06-04T12:50:06.3625063Z           "evidence": []
2026-06-04T12:50:06.3625235Z         },
2026-06-04T12:50:06.3625411Z         "unit": {
2026-06-04T12:50:06.3625621Z           "complete": true,
2026-06-04T12:50:06.3625808Z           "evidence": [
2026-06-04T12:50:06.3625984Z             {
2026-06-04T12:50:06.3626322Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:50:06.3626524Z               "line": 309
2026-06-04T12:50:06.3626702Z             },
2026-06-04T12:50:06.3626864Z             {
2026-06-04T12:50:06.3627220Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:50:06.3627415Z               "line": 102
2026-06-04T12:50:06.3627593Z             },
2026-06-04T12:50:06.3627752Z             {
2026-06-04T12:50:06.3628127Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:50:06.3628361Z               "line": 117
2026-06-04T12:50:06.3628536Z             },
2026-06-04T12:50:06.3628735Z             {
2026-06-04T12:50:06.3629093Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:50:06.3629463Z               "line": 136
2026-06-04T12:50:06.3629659Z             },
2026-06-04T12:50:06.3629828Z             {
2026-06-04T12:50:06.3630169Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:50:06.3630356Z               "line": 308
2026-06-04T12:50:06.3630545Z             },
2026-06-04T12:50:06.3630832Z             {
2026-06-04T12:50:06.3631176Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:50:06.3631385Z               "line": 442
2026-06-04T12:50:06.3631561Z             }
2026-06-04T12:50:06.3631761Z           ]
2026-06-04T12:50:06.3631939Z         }
2026-06-04T12:50:06.3632117Z       }
2026-06-04T12:50:06.3632280Z     },
2026-06-04T12:50:06.3632453Z     {
2026-06-04T12:50:06.3632658Z       "id": "REQ-UPD-5",
2026-06-04T12:50:06.3633141Z       "title": "spt-core ripple-updates registered adapters",
2026-06-04T12:50:06.3633400Z       "requiredStages": [
2026-06-04T12:50:06.3633900Z         "impl",
2026-06-04T12:50:06.3634077Z         "unit"
2026-06-04T12:50:06.3634238Z       ],
2026-06-04T12:50:06.3634434Z       "stages": {
2026-06-04T12:50:06.3634609Z         "doc": {
2026-06-04T12:50:06.3634836Z           "complete": false,
2026-06-04T12:50:06.3642204Z           "evidence": []
2026-06-04T12:50:06.3642608Z         },
2026-06-04T12:50:06.3642815Z         "impl": {
2026-06-04T12:50:06.3643022Z           "complete": true,
2026-06-04T12:50:06.3643219Z           "evidence": [
2026-06-04T12:50:06.3643382Z             {
2026-06-04T12:50:06.3643833Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3644110Z               "line": 27
2026-06-04T12:50:06.3644284Z             },
2026-06-04T12:50:06.3644461Z             {
2026-06-04T12:50:06.3644809Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3645452Z               "line": 82
2026-06-04T12:50:06.3645631Z             },
2026-06-04T12:50:06.3645810Z             {
2026-06-04T12:50:06.3646143Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3646337Z               "line": 134
2026-06-04T12:50:06.3646517Z             },
2026-06-04T12:50:06.3646687Z             {
2026-06-04T12:50:06.3646984Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3647195Z               "line": 260
2026-06-04T12:50:06.3647361Z             },
2026-06-04T12:50:06.3647537Z             {
2026-06-04T12:50:06.3647819Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:50:06.3648036Z               "line": 288
2026-06-04T12:50:06.3648208Z             }
2026-06-04T12:50:06.3648383Z           ]
2026-06-04T12:50:06.3648568Z         },
2026-06-04T12:50:06.3648791Z         "int": {
2026-06-04T12:50:06.3649013Z           "complete": false,
2026-06-04T12:50:06.3649295Z           "evidence": []
2026-06-04T12:50:06.3649669Z         },
2026-06-04T12:50:06.3649873Z         "unit": {
2026-06-04T12:50:06.3650411Z           "complete": true,
2026-06-04T12:50:06.3650612Z           "evidence": [
2026-06-04T12:50:06.3650791Z             {
2026-06-04T12:50:06.3651134Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3651326Z               "line": 194
2026-06-04T12:50:06.3651505Z             },
2026-06-04T12:50:06.3651671Z             {
2026-06-04T12:50:06.3651996Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3652197Z               "line": 208
2026-06-04T12:50:06.3652360Z             },
2026-06-04T12:50:06.3652535Z             {
2026-06-04T12:50:06.3652838Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3653041Z               "line": 222
2026-06-04T12:50:06.3653213Z             },
2026-06-04T12:50:06.3653389Z             {
2026-06-04T12:50:06.3653712Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3653913Z               "line": 236
2026-06-04T12:50:06.3654095Z             },
2026-06-04T12:50:06.3654334Z             {
2026-06-04T12:50:06.3654647Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:50:06.3654844Z               "line": 270
2026-06-04T12:50:06.3655018Z             },
2026-06-04T12:50:06.3655189Z             {
2026-06-04T12:50:06.3655476Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:50:06.3655673Z               "line": 740
2026-06-04T12:50:06.3655834Z             }
2026-06-04T12:50:06.3656008Z           ]
2026-06-04T12:50:06.3656178Z         }
2026-06-04T12:50:06.3656351Z       }
2026-06-04T12:50:06.3656522Z     }
2026-06-04T12:50:06.3656677Z   ],
2026-06-04T12:50:06.3656860Z   "findings": []
2026-06-04T12:50:06.3657013Z }
